[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250903102243.1563527-4-isaac.scott@ideasonboard.com>
Date: Wed, 3 Sep 2025 11:22:42 +0100
From: Isaac Scott <isaac.scott@...asonboard.com>
To: laurent.pinchart@...asonboard.com
Cc: rmfrfs@...il.com,
martink@...teo.de,
kernel@...i.sm,
mchehab@...nel.org,
shawnguo@...nel.org,
s.hauer@...gutronix.de,
kernel@...gutronix.de,
festevam@...il.com,
linux-media@...r.kernel.org,
imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
hverkuil@...nel.org,
nicolas.dufresne@...labora.com,
sakari.ailus@...ux.intel.com,
tomi.valkeinen@...asonboard.com,
jonas@...boo.se,
dan.scally+renesas@...asonboard.com,
m.szyprowski@...sung.com,
mehdi.djait@...ux.intel.com,
niklas.soderlund+renesas@...natech.se,
Isaac Scott <isaac.scott@...asonboard.com>
Subject: [PATCH v2 3/3] media: imx-mipi-csis: Get number of active lanes via mbus_config
The number of lanes actively used by a MIPI CSI transmitter may differ
from that which is defined in device tree. As such, call on
v4l2_get_active_data_lanes to check if the driver reports a
differing number of lanes to device tree, and use that number of active
lanes.
If the number of active data lanes is invalid, or the op is not
supported, it will use the number of lanes defined in device tree.
Signed-off-by: Isaac Scott <isaac.scott@...asonboard.com>
---
drivers/media/platform/nxp/imx-mipi-csis.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/media/platform/nxp/imx-mipi-csis.c b/drivers/media/platform/nxp/imx-mipi-csis.c
index fc89325f2f94..985be511bcd0 100644
--- a/drivers/media/platform/nxp/imx-mipi-csis.c
+++ b/drivers/media/platform/nxp/imx-mipi-csis.c
@@ -967,6 +967,9 @@ static int mipi_csis_s_stream(struct v4l2_subdev *sd, int enable)
format = v4l2_subdev_state_get_format(state, CSIS_PAD_SINK);
csis_fmt = find_csis_format(format->code);
+ csis->bus.num_data_lanes = v4l2_get_active_data_lanes(csis->source.pad,
+ csis->max_data_lanes);
+
ret = mipi_csis_calculate_params(csis, csis_fmt);
if (ret < 0)
goto err_unlock;
--
2.43.0
Powered by blists - more mailing lists