On Thu Aug 27 15:33:22 2026 +0300, Antti Laakso wrote:
> For ipu7 bus type can be CPHY or DPHY.
> 
> Signed-off-by: Antti Laakso <[email protected]>
> Signed-off-by: Sakari Ailus <[email protected]>

Patch committed.

Thanks,
Sakari Ailus

 drivers/media/pci/intel/ipu6/ipu6-isys.c | 8 ++++++++
 drivers/media/pci/intel/ipu6/ipu6-isys.h | 2 ++
 2 files changed, 10 insertions(+)

---

diff --git a/drivers/media/pci/intel/ipu6/ipu6-isys.c 
b/drivers/media/pci/intel/ipu6/ipu6-isys.c
index 5de5fd16ca30..976ed064f262 100644
--- a/drivers/media/pci/intel/ipu6/ipu6-isys.c
+++ b/drivers/media/pci/intel/ipu6/ipu6-isys.c
@@ -133,6 +133,9 @@ isys_complete_ext_device_registration(struct ipu6_isys 
*isys,
        }
 
        isys->csi2[csi2->port].nlanes = csi2->nlanes;
+       isys->csi2[csi2->port].phy_mode =
+               csi2->bus_type == V4L2_MBUS_CSI2_DPHY ?
+               PHY_MODE_DPHY : PHY_MODE_CPHY;
 
        return 0;
 
@@ -639,6 +642,10 @@ static int isys_notifier_init(struct ipu6_isys *isys)
                        continue;
 
                ret = v4l2_fwnode_endpoint_parse(ep, &vep);
+               if (ret && IS_IPU7(isp)) {
+                       vep.bus_type = V4L2_MBUS_CSI2_CPHY;
+                       ret = v4l2_fwnode_endpoint_parse(ep, &vep);
+               }
                if (ret) {
                        dev_err(dev, "fwnode endpoint parse failed: %d\n", ret);
                        goto err_parse;
@@ -654,6 +661,7 @@ static int isys_notifier_init(struct ipu6_isys *isys)
 
                s_asd->csi2.port = vep.base.port;
                s_asd->csi2.nlanes = vep.bus.mipi_csi2.num_data_lanes;
+               s_asd->csi2.bus_type = vep.bus_type;
 
                dev_dbg(dev, "remote endpoint port %d with %d lanes added\n",
                        s_asd->csi2.port, s_asd->csi2.nlanes);
diff --git a/drivers/media/pci/intel/ipu6/ipu6-isys.h 
b/drivers/media/pci/intel/ipu6/ipu6-isys.h
index 30539ea5f826..8674c041b994 100644
--- a/drivers/media/pci/intel/ipu6/ipu6-isys.h
+++ b/drivers/media/pci/intel/ipu6/ipu6-isys.h
@@ -14,6 +14,7 @@
 #include <media/media-device.h>
 #include <media/v4l2-async.h>
 #include <media/v4l2-device.h>
+#include <media/v4l2-mediabus.h>
 
 #include "ipu6.h"
 #include "ipu6-fw-isys.h"
@@ -96,6 +97,7 @@ struct isys_iwake_watermark {
 struct ipu6_isys_csi2_config {
        u32 nlanes;
        u32 port;
+       enum v4l2_mbus_type bus_type;
 };
 
 struct sensor_async_sd {
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to