Commit 3dc9770b authored by Jai Luthra's avatar Jai Luthra Committed by Hans Verkuil
Browse files

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: default avatarJai Luthra <jai.luthra@ideasonboard.com>
Reviewed-by: default avatarJacopo Mondi <jacopo.mondi@ideasonboard.com>
Tested-by: default avatarJacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarHans Verkuil <hverkuil+cisco@kernel.org>
parent 9ef6e4db
Loading
Loading
Loading
Loading
+3 −13
Original line number Diff line number Diff line
@@ -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)