aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_drv.c
diff options
context:
space:
mode:
authorSean Paul <seanpaul@chromium.org>2016-08-15 19:18:04 -0400
committerSean Paul <seanpaul@chromium.org>2016-08-18 12:37:10 -0400
commitc4e68a5832021cf8c2f9a2f3419452470ca60bd8 (patch)
treea15fe4aeb6235c2c47cc2563253ed9c219ce41a3 /drivers/gpu/drm/drm_drv.c
parent8f0e4907a8e7545850ae093a0286833f3949e4cb (diff)
drm: Introduce DRM_DEV_* log messages
This patch consolidates all the various log functions/macros into one uber function, drm_log. It also introduces some new DRM_DEV_* variants that print the device name to delineate multiple devices of the same type. Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Signed-off-by: Sean Paul <seanpaul@chromium.org> Link: http://patchwork.freedesktop.org/patch/msgid/1471303084-3757-1-git-send-email-seanpaul@chromium.org
Diffstat (limited to 'drivers/gpu/drm/drm_drv.c')
-rw-r--r--drivers/gpu/drm/drm_drv.c27
1 files changed, 19 insertions, 8 deletions
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
index 57ce9734e0c6..a7f628298365 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
@@ -63,37 +63,48 @@ static struct idr drm_minors_idr;
63 63
64static struct dentry *drm_debugfs_root; 64static struct dentry *drm_debugfs_root;
65 65
66void drm_err(const char *format, ...) 66#define DRM_PRINTK_FMT "[" DRM_NAME ":%s]%s %pV"
67
68void drm_dev_printk(const struct device *dev, const char *level,
69 unsigned int category, const char *function_name,
70 const char *prefix, const char *format, ...)
67{ 71{
68 struct va_format vaf; 72 struct va_format vaf;
69 va_list args; 73 va_list args;
70 74
71 va_start(args, format); 75 if (category != DRM_UT_NONE && !(drm_debug & category))
76 return;
72 77
78 va_start(args, format);
73 vaf.fmt = format; 79 vaf.fmt = format;
74 vaf.va = &args; 80 vaf.va = &args;
75 81
76 printk(KERN_ERR "[" DRM_NAME ":%ps] *ERROR* %pV", 82 dev_printk(level, dev, DRM_PRINTK_FMT, function_name, prefix,
77 __builtin_return_address(0), &vaf); 83 &vaf);
78 84
79 va_end(args); 85 va_end(args);
80} 86}
81EXPORT_SYMBOL(drm_err); 87EXPORT_SYMBOL(drm_dev_printk);
82 88
83void drm_ut_debug_printk(const char *function_name, const char *format, ...) 89void drm_printk(const char *level, unsigned int category,
90 const char *function_name, const char *prefix,
91 const char *format, ...)
84{ 92{
85 struct va_format vaf; 93 struct va_format vaf;
86 va_list args; 94 va_list args;
87 95
96 if (category != DRM_UT_NONE && !(drm_debug & category))
97 return;
98
88 va_start(args, format); 99 va_start(args, format);
89 vaf.fmt = format; 100 vaf.fmt = format;
90 vaf.va = &args; 101 vaf.va = &args;
91 102
92 printk(KERN_DEBUG "[" DRM_NAME ":%s] %pV", function_name, &vaf); 103 printk("%s" DRM_PRINTK_FMT, level, function_name, prefix, &vaf);
93 104
94 va_end(args); 105 va_end(args);
95} 106}
96EXPORT_SYMBOL(drm_ut_debug_printk); 107EXPORT_SYMBOL(drm_printk);
97 108
98/* 109/*
99 * DRM Minors 110 * DRM Minors