From: David Heidelberg <[email protected]>

We need to set correct mode for PLL to calculate correct frequency.
Signalling mode is known at this point, so use it for that.

Fixes: 47b6eaf36eba ("media: ccs-pll: Differentiate between CSI-2 D-PHY and 
C-PHY")
Signed-off-by: David Heidelberg <[email protected]>
---
Changes in v2:
- Account for CCP2 which PLL calculation handled same way as D-PHY.
- Add default statement for error handling. (Mehdi)
- Link to v1: 
https://lore.kernel.org/r/[email protected]
---
 drivers/media/i2c/ccs/ccs-core.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/drivers/media/i2c/ccs/ccs-core.c b/drivers/media/i2c/ccs/ccs-core.c
index f8523140784c7..c1fff4029b5bd 100644
--- a/drivers/media/i2c/ccs/ccs-core.c
+++ b/drivers/media/i2c/ccs/ccs-core.c
@@ -3425,7 +3425,22 @@ static int ccs_probe(struct i2c_client *client)
        sensor->scale_m = CCS_LIM(sensor, SCALER_N_MIN);
 
        /* prepare PLL configuration input values */
-       sensor->pll.bus_type = CCS_PLL_BUS_TYPE_CSI2_DPHY;
+       switch (sensor->hwcfg.csi_signalling_mode) {
+       case CCS_CSI_SIGNALING_MODE_CSI_2_CPHY:
+               sensor->pll.bus_type = CCS_PLL_BUS_TYPE_CSI2_CPHY;
+               break;
+       case CCS_CSI_SIGNALING_MODE_CSI_2_DPHY:
+       case SMIAPP_CSI_SIGNALLING_MODE_CCP2_DATA_CLOCK;
+       case SMIAPP_CSI_SIGNALLING_MODE_CCP2_DATA_STROBE:
+               sensor->pll.bus_type = CCS_PLL_BUS_TYPE_CSI2_DPHY;
+               break;
+       default:
+               dev_err(&client->dev, "unsupported signalling mode %u\n",
+                       sensor->hwcfg.csi_signalling_mode);
+               rval = -EINVAL;
+               goto out_cleanup;
+
+       }
        sensor->pll.csi2.lanes = sensor->hwcfg.lanes;
        if (CCS_LIM(sensor, CLOCK_CALCULATION) &
            CCS_CLOCK_CALCULATION_LANE_SPEED) {

---
base-commit: f96074c6d01d8a5e9e2fccd0bba5f2ed654c1f2d
change-id: 20260106-ccs-account-for-cphy-af9788b6029f

Best regards,
-- 
David Heidelberg <[email protected]>



Reply via email to