From: Jai Luthra Date: Fri, 17 Oct 2025 08:13:50 +0000 (+0530) Subject: media: i2c: imx219: Simplify imx219_get_binning() function X-Git-Tag: v6.19-rc1~159^2~136 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3dc9770bf2d521e992df5ebcfdbf1dc68653788b;p=thirdparty%2Fkernel%2Flinux.git media: i2c: imx219: Simplify imx219_get_binning() function In imx219_set_pad_format() there is now a constraint to enforce hbin == vbin. So, simplify the logic in imx219_get_binning() function by removing dead code that handles the case where hbin != vbin. Signed-off-by: Jai Luthra Reviewed-by: Jacopo Mondi Tested-by: Jacopo Mondi Signed-off-by: Sakari Ailus Signed-off-by: Hans Verkuil --- diff --git a/drivers/media/i2c/imx219.c b/drivers/media/i2c/imx219.c index 300935b1ef249..48efdcd2a8f96 100644 --- a/drivers/media/i2c/imx219.c +++ b/drivers/media/i2c/imx219.c @@ -409,24 +409,14 @@ static void imx219_get_binning(struct v4l2_subdev_state *state, u8 *bin_h, u32 hbin = crop->width / format->width; u32 vbin = crop->height / format->height; - *bin_h = IMX219_BINNING_NONE; - *bin_v = IMX219_BINNING_NONE; - - /* - * Use analog binning only if both dimensions are binned, as it crops - * the other dimension. - */ if (hbin == 2 && vbin == 2) { *bin_h = IMX219_BINNING_X2_ANALOG; *bin_v = IMX219_BINNING_X2_ANALOG; - - return; + } else { + *bin_h = IMX219_BINNING_NONE; + *bin_v = IMX219_BINNING_NONE; } - if (hbin == 2) - *bin_h = IMX219_BINNING_X2; - if (vbin == 2) - *bin_v = IMX219_BINNING_X2; } static inline u32 imx219_get_rate_factor(struct v4l2_subdev_state *state)