]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: omap3isp: ispccp2: always clamp in ccp2_try_format()
authorHans Verkuil <hverkuil+cisco@kernel.org>
Tue, 7 Oct 2025 15:06:43 +0000 (17:06 +0200)
committerHans Verkuil <hverkuil+cisco@kernel.org>
Tue, 6 Jan 2026 07:22:46 +0000 (08:22 +0100)
If ccp2->input == CCP2_INPUT_NONE, then try_format didn't clamp
the width and height. This can happen with v4l2-compliance tests.

Always clamp.

This fixes this v4l2-compliance error:

fail: v4l2-test-subdevs.cpp(171): fse.max_width == ~0U || fse.max_height == ~0U
fail: v4l2-test-subdevs.cpp(270): ret && ret != ENOTTY
test Try VIDIOC_SUBDEV_ENUM_MBUS_CODE/FRAME_SIZE/FRAME_INTERVAL: FAIL

Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
drivers/media/platform/ti/omap3isp/ispccp2.c

index f4147c79639cc348ec292c587c2cf01043a77a62..d668111b44f4484eac2c8bfb43d068828b58e18c 100644 (file)
@@ -658,7 +658,7 @@ static void ccp2_try_format(struct isp_ccp2_device *ccp2,
                        fmt->height = clamp_t(u32, fmt->height,
                                              ISPCCP2_DAT_SIZE_MIN,
                                              ISPCCP2_DAT_SIZE_MAX);
-               } else if (ccp2->input == CCP2_INPUT_MEMORY) {
+               } else {
                        fmt->width = clamp_t(u32, fmt->width,
                                             ISPCCP2_LCM_HSIZE_COUNT_MIN,
                                             ISPCCP2_LCM_HSIZE_COUNT_MAX);