diff options
author | Kieran Bingham <kieran.bingham@ideasonboard.com> | 2025-04-30 08:36:49 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-06-27 11:11:17 +0100 |
commit | 1f78790d988c9d55cf8d4b4d511d4b3e38ecb81d (patch) | |
tree | 34ad6a5064060ef7e3cb4a58b6afb8a590779825 | |
parent | 5ae9ff1ee2be89e1b72a72124f64a81fc60c2de9 (diff) |
media: i2c: imx335: Fix frame size enumeration
commit b240df2913d396638033b86af0f0ff76aa1aafc8 upstream.
In commit cfa49ff0558a ("media: i2c: imx335: Support 2592x1940 10-bit
mode") the IMX335 driver was extended to support multiple output
bitdepth modes.
This incorrectly extended the frame size enumeration to check against
the supported mbus_codes array instead of the supported mode/frame
array. This has the unwanted side effect of reporting the currently
supported frame size 2592x1944 three times.
Fix the check accordingly to report a frame size for each supported
size, which is presently only a single entry.
Fixes: cfa49ff0558a ("media: i2c: imx335: Support 2592x1940 10-bit mode")
Cc: stable@vger.kernel.org
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/media/i2c/imx335.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/i2c/imx335.c b/drivers/media/i2c/imx335.c index d400a019f6b3..9b4db4cd4929 100644 --- a/drivers/media/i2c/imx335.c +++ b/drivers/media/i2c/imx335.c @@ -660,7 +660,8 @@ static int imx335_enum_frame_size(struct v4l2_subdev *sd, struct imx335 *imx335 = to_imx335(sd); u32 code; - if (fsize->index > ARRAY_SIZE(imx335_mbus_codes)) + /* Only a single supported_mode available. */ + if (fsize->index > 0) return -EINVAL; code = imx335_get_format_code(imx335, fsize->code); |