openwrt/target/linux/bcm27xx/patches-5.15/950-0270-media-bcm2835-unic...

37 lines
1.1 KiB
Diff

From 4ff8008e5a3f2d6dc1fa669f6cebb5f8b88e875b Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
Date: Tue, 7 Jul 2020 14:52:43 +0100
Subject: [PATCH] media: bcm2835-unicam: Ensure type is VIDEO_CAPTURE
in [g|s]_selection
[g|s]_selection pass in a buffer type that needs to be validated
before passing on to the sensor subdev.
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
drivers/media/platform/bcm2835/bcm2835-unicam.c | 6 ++++++
1 file changed, 6 insertions(+)
--- a/drivers/media/platform/bcm2835/bcm2835-unicam.c
+++ b/drivers/media/platform/bcm2835/bcm2835-unicam.c
@@ -1885,6 +1885,9 @@ static int unicam_s_selection(struct fil
.r = sel->r,
};
+ if (sel->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
+ return -EINVAL;
+
return v4l2_subdev_call(dev->sensor, pad, set_selection, NULL, &sdsel);
}
@@ -1899,6 +1902,9 @@ static int unicam_g_selection(struct fil
};
int ret;
+ if (sel->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
+ return -EINVAL;
+
ret = v4l2_subdev_call(dev->sensor, pad, get_selection, NULL, &sdsel);
if (!ret)
sel->r = sdsel.r;