From 1d32cf5ad0ef75fd639b1cf4061d736d099b9ef5 Mon Sep 17 00:00:00 2001 From: Cody Xie Date: Thu, 12 Oct 2023 15:24:15 +0800 Subject: [PATCH] media: i2c: maxim4c: MIPI VC count does not affected by data lane count Change-Id: I56938bf429e6b64287aa47acd5c77823c108f18b Signed-off-by: Cody Xie --- drivers/media/i2c/maxim4c/maxim4c_drv.c | 5 +++-- drivers/media/i2c/maxim4c/maxim4c_v4l2.c | 18 +++--------------- 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/drivers/media/i2c/maxim4c/maxim4c_drv.c b/drivers/media/i2c/maxim4c/maxim4c_drv.c index 9d9df08b4dbd..65650eeb5387 100644 --- a/drivers/media/i2c/maxim4c/maxim4c_drv.c +++ b/drivers/media/i2c/maxim4c/maxim4c_drv.c @@ -29,12 +29,13 @@ * V2.03.00 * 1. remote device add the maxim4c prefix to driver name. * - * V2.04.03 + * V2.04.04 * 1. Add regulator supplier dependencies. * 2. Add config ssc-ratio property * 3. Add debugfs entry to change MIPI timing * 4. Use PM runtime autosuspend feature * 5. Fix unbalanced disabling for PoC regulator + * 6. MIPI VC count does not affected by data lane count * */ #include @@ -65,7 +66,7 @@ #include "maxim4c_api.h" -#define DRIVER_VERSION KERNEL_VERSION(2, 0x04, 0x03) +#define DRIVER_VERSION KERNEL_VERSION(2, 0x04, 0x04) #define MAXIM4C_XVCLK_FREQ 25000000 diff --git a/drivers/media/i2c/maxim4c/maxim4c_v4l2.c b/drivers/media/i2c/maxim4c/maxim4c_v4l2.c index b40fdf2b3632..a331023da0d4 100644 --- a/drivers/media/i2c/maxim4c/maxim4c_v4l2.c +++ b/drivers/media/i2c/maxim4c/maxim4c_v4l2.c @@ -786,21 +786,9 @@ static int maxim4c_g_mbus_config(struct v4l2_subdev *sd, unsigned int pad, val |= V4L2_MBUS_CSI2_CONTINUOUS_CLOCK; val |= (1 << (data_lanes - 1)); - switch (data_lanes) { - case 4: - val |= V4L2_MBUS_CSI2_CHANNEL_3; - fallthrough; - case 3: - val |= V4L2_MBUS_CSI2_CHANNEL_2; - fallthrough; - case 2: - val |= V4L2_MBUS_CSI2_CHANNEL_1; - fallthrough; - case 1: - default: - val |= V4L2_MBUS_CSI2_CHANNEL_0; - break; - } + + val |= V4L2_MBUS_CSI2_CHANNEL_3 | V4L2_MBUS_CSI2_CHANNEL_2 | + V4L2_MBUS_CSI2_CHANNEL_1 | V4L2_MBUS_CSI2_CHANNEL_0; config->type = V4L2_MBUS_CSI2_DPHY; config->flags = val;