On Mon 2021-02-08 22:09:02, Sakari Ailus wrote:
Now that we can print FourCC codes directly using printk, make use of the feature in V4L2 core.
Signed-off-by: Sakari Ailus sakari.ailus@linux.intel.com
drivers/media/v4l2-core/v4l2-ioctl.c | 85 +++++++--------------------- 1 file changed, 21 insertions(+), 64 deletions(-)
diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c index 31d1342e61e8..31662c3a8c9e 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -265,13 +265,9 @@ static void v4l_print_fmtdesc(const void *arg, bool write_only) { const struct v4l2_fmtdesc *p = arg;
- pr_cont("index=%u, type=%s, flags=0x%x, pixelformat=%c%c%c%c, mbus_code=0x%04x, description='%.*s'\n",
- pr_cont("index=%u, type=%s, flags=0x%x, pixelformat=%p4cc, mbus_code=0x%04x, description='%.*s'\n",
Is %p4cc really acceptable here?
The original code printed only the 4 characters. The original code would print something like:
index=21, type=bla, flags=0x0, pixelformat=BG12, mbus_code=0x0a9f, descrition="bla bla bla"
while the new code will do:
index=21, type=bla, flags=0x0, pixelformat=BG12 little-endian (0x32314742), mbus_code=0x0a9f, descrition="bla bla bla"
This is much harder to parse because there are spaces also inside pixel_format=<value>
p->index, prt_names(p->type, v4l2_type_names),
p->flags, (p->pixelformat & 0xff),
(p->pixelformat >> 8) & 0xff,
(p->pixelformat >> 16) & 0xff,
(p->pixelformat >> 24) & 0xff,
p->mbus_code,
(int)sizeof(p->description), p->description);p->flags, &p->pixelformat, p->mbus_code,
}
Best Regards, Petr