lib/vsprintf: Add support for printing V4L2 and DRM fourccs

Add a printk modifier %p4cc (for pixel format) for printing V4L2 and DRM
pixel formats denoted by fourccs. The fourcc encoding is the same for both
so the same implementation can be used.

Suggested-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20210216155723.17109-2-sakari.ailus@linux.intel.com
This commit is contained in:
Sakari Ailus 2021-02-16 17:57:20 +02:00 committed by Thomas Zimmermann
parent 4d36cf0702
commit af612e43de
4 changed files with 79 additions and 2 deletions

View file

@ -6557,9 +6557,11 @@ sub process {
$specifier = $1;
$extension = $2;
$qualifier = $3;
if ($extension !~ /[SsBKRraEehMmIiUDdgVCbGNOxtf]/ ||
if ($extension !~ /[4SsBKRraEehMmIiUDdgVCbGNOxtf]/ ||
($extension eq "f" &&
defined $qualifier && $qualifier !~ /^w/)) {
defined $qualifier && $qualifier !~ /^w/) ||
($extension eq "4" &&
defined $qualifier && $qualifier !~ /^cc/)) {
$bad_specifier = $specifier;
last;
}