diff options
author | Sean Paul <seanpaul@chromium.org> | 2016-08-15 19:18:04 -0400 |
---|---|---|
committer | Sean Paul <seanpaul@chromium.org> | 2016-08-18 12:37:10 -0400 |
commit | c4e68a5832021cf8c2f9a2f3419452470ca60bd8 (patch) | |
tree | a15fe4aeb6235c2c47cc2563253ed9c219ce41a3 /drivers/gpu/drm/drm_drv.c | |
parent | 8f0e4907a8e7545850ae093a0286833f3949e4cb (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.c | 27 |
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 | ||
64 | static struct dentry *drm_debugfs_root; | 64 | static struct dentry *drm_debugfs_root; |
65 | 65 | ||
66 | void drm_err(const char *format, ...) | 66 | #define DRM_PRINTK_FMT "[" DRM_NAME ":%s]%s %pV" |
67 | |||
68 | void 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 | } |
81 | EXPORT_SYMBOL(drm_err); | 87 | EXPORT_SYMBOL(drm_dev_printk); |
82 | 88 | ||
83 | void drm_ut_debug_printk(const char *function_name, const char *format, ...) | 89 | void 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 | } |
96 | EXPORT_SYMBOL(drm_ut_debug_printk); | 107 | EXPORT_SYMBOL(drm_printk); |
97 | 108 | ||
98 | /* | 109 | /* |
99 | * DRM Minors | 110 | * DRM Minors |