On Wed Jul 22 20:14:51 2026 +0330, Arash Golgol wrote:
> vimc_capture_enum_framesizes() looks up the requested format using
> vimc_pix_map_by_code(), which searches the pix map table by media
> bus code (MEDIA_BUS_FMT_*).
>
> However, v4l2_frmsizeenum::pixel_format holds a V4L2 pixel format
> (V4L2_PIX_FMT_*), not a media bus code, so valid pixel formats end
> up being rejected with -EINVAL.
>
> Fix this by using vimc_pix_map_by_pixelformat() instead, which
> performs the lookup by pixel format as the ioctl expects.
>
> Fixes: 09c41a23a2e2 ("media: Revert "media: vimc: propagate pixel format in
> the stream"")
> Cc: [email protected]
> Signed-off-by: Arash Golgol <[email protected]>
> Signed-off-by: Hans Verkuil <[email protected]>
Patch committed.
Thanks,
Hans Verkuil
drivers/media/test-drivers/vimc/vimc-capture.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/drivers/media/test-drivers/vimc/vimc-capture.c
b/drivers/media/test-drivers/vimc/vimc-capture.c
index e0c6bc9f8f20..ac60c9b5418e 100644
--- a/drivers/media/test-drivers/vimc/vimc-capture.c
+++ b/drivers/media/test-drivers/vimc/vimc-capture.c
@@ -175,8 +175,8 @@ static int vimc_capture_enum_framesizes(struct file *file,
void *priv,
if (fsize->index)
return -EINVAL;
- /* Only accept code in the pix map table */
- vpix = vimc_pix_map_by_code(fsize->pixel_format);
+ /* Only accept pixel_format in the pix map table */
+ vpix = vimc_pix_map_by_pixelformat(fsize->pixel_format);
if (!vpix)
return -EINVAL;
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]