* [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk
@ 2026-01-15 10:12 Wenmeng Liu
2026-01-15 10:12 ` [PATCH v3 1/5] arm64: dts: qcom: talos: Add camss node Wenmeng Liu
` (5 more replies)
0 siblings, 6 replies; 16+ messages in thread
From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw)
To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss,
Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media,
imx, linux-arm-kernel, Wenmeng Liu, Konrad Dybcio,
Dmitry Baryshkov
Talos EVK is based on the Qualcomm SM6150 SoC.
It lacks a camera sensor in its default configuration.
This series adds CCI support and enables the IMX577 sensor via CSIPHY1
through device tree overlay.
We have tested IMX577 Sensor on CCI1 with following commands:
- media-ctl -d /dev/media0 --reset
- media-ctl -d /dev/media0 -V '"imx577 1-001a":0[fmt:SRGGB10/4056x3040 field:none]'
- media-ctl -d /dev/media0 -V '"msm_csiphy1":0[fmt:SRGGB10/4056x3040]'
- media-ctl -d /dev/media0 -V '"msm_csid0":0[fmt:SRGGB10/4056x3040]'
- media-ctl -d /dev/media0 -V '"msm_vfe0_rdi0":0[fmt:SRGGB10/4056x3040]'
- media-ctl -d /dev/media0 -l '"msm_csiphy1":1->"msm_csid0":0[1]'
- media-ctl -d /dev/media0 -l '"msm_csid0":1->"msm_vfe0_rdi0":0[1]'
- yavta -B capture-mplane -n 5 -f SRGGB10P -s 4056x3040 -F /dev/video0 --capture=5
Driver and dt-binding are waiting to be merged:
https://lore.kernel.org/lkml/20260112-sm6150-camss-v4-0-0cd576d627f7@oss.qualcomm.com/
I moved the DTS patch from above series into this patch because it needs to be adapted
for the following changes:
https://lore.kernel.org/lkml/20260108092542.1371-2-yuanjie.yang@oss.qualcomm.com/
This patch series depends on patch series:
https://lore.kernel.org/lkml/20260114100043.1310164-1-tessolveupstream@gmail.com/
Changes in v3:
- Add generic names for the CCI clock. -- Loic, Krzysztof
- Split cci node, removed double space. -- Dmitry
- Rename camera dtso name, add detailed description. -- Dmitry,
Vladimir, Bryan
- Add dtbo-y for dtso. -- Rob
- Interrupts cell change adaptation.
- Delete cci sleep pinctrl state.
- Link to v2: https://lore.kernel.org/r/20260106-sm6150_evk-v2-0-bb112cb83d74@oss.qualcomm.com
Changes in v2:
- Modify the CCI dts style and commit msg. - Konrad
- Split mclk change as a separate patch. - Vladimir
- Remove clock-lanes. - Vladimir
- Add mclk3(GPIO31). - Vladimir
- Link to v1:
https://lore.kernel.org/all/20251222-sm6150_evk-v1-0-4d260a31c00d@oss.qualcomm.com/
---
Wenmeng Liu (5):
arm64: dts: qcom: talos: Add camss node
dt-bindings: i2c: qcom-cci: Document sm6150 compatible
arm64: dts: qcom: talos: Add CCI definitions
arm64: dts: qcom: talos: Add camera MCLK pinctrl
arm64: dts: qcom: talos-evk-camera: Add DT overlay
.../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++
arch/arm64/boot/dts/qcom/Makefile | 3 +
.../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 +++++
arch/arm64/boot/dts/qcom/talos.dtsi | 279 +++++++++++++++++++++
4 files changed, 363 insertions(+)
---
base-commit: cd8d9e120cd9c8f1772df99a92a5ddb29c068a9b
change-id: 20251222-sm6150_evk-8ebed9e9f3bc
Best regards,
--
Wenmeng <wenmeng.liu@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 16+ messages in thread* [PATCH v3 1/5] arm64: dts: qcom: talos: Add camss node 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu @ 2026-01-15 10:12 ` Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible Wenmeng Liu ` (4 subsequent siblings) 5 siblings, 0 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw) To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Wenmeng Liu Add node for the SM6150 camera subsystem. Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> --- arch/arm64/boot/dts/qcom/talos.dtsi | 200 ++++++++++++++++++++++++++++++++++++ 1 file changed, 200 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/talos.dtsi b/arch/arm64/boot/dts/qcom/talos.dtsi index 6b9f2521d718eb5c9683393a2e5b67928631d96f..fe59975d56d6e65163dc7fcce8e08c50fadc3786 100644 --- a/arch/arm64/boot/dts/qcom/talos.dtsi +++ b/arch/arm64/boot/dts/qcom/talos.dtsi @@ -3790,6 +3790,206 @@ videocc: clock-controller@ab00000 { #power-domain-cells = <1>; }; + camss: isp@acb3000 { + compatible = "qcom,sm6150-camss"; + + reg = <0x0 0x0acb3000 0x0 0x1000>, + <0x0 0x0acba000 0x0 0x1000>, + <0x0 0x0acc8000 0x0 0x1000>, + <0x0 0x0ac65000 0x0 0x1000>, + <0x0 0x0ac66000 0x0 0x1000>, + <0x0 0x0ac67000 0x0 0x1000>, + <0x0 0x0acaf000 0x0 0x4000>, + <0x0 0x0acb6000 0x0 0x4000>, + <0x0 0x0acc4000 0x0 0x4000>, + <0x0 0x0ac6f000 0x0 0x3000>, + <0x0 0x0ac42000 0x0 0x5000>, + <0x0 0x0ac48000 0x0 0x1000>, + <0x0 0x0ac40000 0x0 0x1000>, + <0x0 0x0ac18000 0x0 0x3000>, + <0x0 0x0ac00000 0x0 0x6000>, + <0x0 0x0ac10000 0x0 0x8000>, + <0x0 0x0ac87000 0x0 0x3000>, + <0x0 0x0ac52000 0x0 0x4000>, + <0x0 0x0ac4e000 0x0 0x4000>, + <0x0 0x0ac6b000 0x0 0x0a00>; + reg-names = "csid0", + "csid1", + "csid_lite", + "csiphy0", + "csiphy1", + "csiphy2", + "vfe0", + "vfe1", + "vfe_lite", + "bps", + "camnoc", + "cpas_cdm", + "cpas_top", + "icp_csr", + "icp_qgic", + "icp_sierra", + "ipe0", + "jpeg_dma", + "jpeg_enc", + "lrme"; + + clocks = <&gcc GCC_CAMERA_AHB_CLK>, + <&gcc GCC_CAMERA_HF_AXI_CLK>, + <&camcc CAM_CC_CAMNOC_AXI_CLK>, + <&camcc CAM_CC_CPAS_AHB_CLK>, + <&camcc CAM_CC_CSIPHY0_CLK>, + <&camcc CAM_CC_CSI0PHYTIMER_CLK>, + <&camcc CAM_CC_CSIPHY1_CLK>, + <&camcc CAM_CC_CSI1PHYTIMER_CLK>, + <&camcc CAM_CC_CSIPHY2_CLK>, + <&camcc CAM_CC_CSI2PHYTIMER_CLK>, + <&camcc CAM_CC_SOC_AHB_CLK>, + <&camcc CAM_CC_IFE_0_CLK>, + <&camcc CAM_CC_IFE_0_AXI_CLK>, + <&camcc CAM_CC_IFE_0_CPHY_RX_CLK>, + <&camcc CAM_CC_IFE_0_CSID_CLK>, + <&camcc CAM_CC_IFE_1_CLK>, + <&camcc CAM_CC_IFE_1_AXI_CLK>, + <&camcc CAM_CC_IFE_1_CPHY_RX_CLK>, + <&camcc CAM_CC_IFE_1_CSID_CLK>, + <&camcc CAM_CC_IFE_LITE_CLK>, + <&camcc CAM_CC_IFE_LITE_CPHY_RX_CLK>, + <&camcc CAM_CC_IFE_LITE_CSID_CLK>, + <&camcc CAM_CC_BPS_CLK>, + <&camcc CAM_CC_BPS_AHB_CLK>, + <&camcc CAM_CC_BPS_AXI_CLK>, + <&camcc CAM_CC_BPS_AREG_CLK>, + <&camcc CAM_CC_ICP_CLK>, + <&camcc CAM_CC_IPE_0_CLK>, + <&camcc CAM_CC_IPE_0_AHB_CLK>, + <&camcc CAM_CC_IPE_0_AREG_CLK>, + <&camcc CAM_CC_IPE_0_AXI_CLK>, + <&camcc CAM_CC_JPEG_CLK>, + <&camcc CAM_CC_LRME_CLK>; + clock-names = "gcc_ahb", + "gcc_axi_hf", + "camnoc_axi", + "cpas_ahb", + "csiphy0", + "csiphy0_timer", + "csiphy1", + "csiphy1_timer", + "csiphy2", + "csiphy2_timer", + "soc_ahb", + "vfe0", + "vfe0_axi", + "vfe0_cphy_rx", + "vfe0_csid", + "vfe1", + "vfe1_axi", + "vfe1_cphy_rx", + "vfe1_csid", + "vfe_lite", + "vfe_lite_cphy_rx", + "vfe_lite_csid", + "bps", + "bps_ahb", + "bps_axi", + "bps_areg", + "icp", + "ipe0", + "ipe0_ahb", + "ipe0_areg", + "ipe0_axi", + "jpeg", + "lrme"; + + interconnects = <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY + &config_noc SLAVE_CAMERA_CFG QCOM_ICC_TAG_ACTIVE_ONLY>, + <&mmss_noc MASTER_CAMNOC_HF0 QCOM_ICC_TAG_ALWAYS + &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>, + <&mmss_noc MASTER_CAMNOC_HF1 QCOM_ICC_TAG_ALWAYS + &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>, + <&mmss_noc MASTER_CAMNOC_SF QCOM_ICC_TAG_ALWAYS + &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>; + interconnect-names = "ahb", + "hf_0", + "hf_1", + "sf_mnoc"; + + interrupts = <GIC_SPI 464 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 466 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 468 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 477 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 478 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 479 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 465 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 467 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 469 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 459 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 461 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 463 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 475 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 474 IRQ_TYPE_EDGE_RISING 0>, + <GIC_SPI 476 IRQ_TYPE_EDGE_RISING 0>; + interrupt-names = "csid0", + "csid1", + "csid_lite", + "csiphy0", + "csiphy1", + "csiphy2", + "vfe0", + "vfe1", + "vfe_lite", + "camnoc", + "cdm", + "icp", + "jpeg_dma", + "jpeg_enc", + "lrme"; + + iommus = <&apps_smmu 0x0820 0x40>, + <&apps_smmu 0x0840 0x00>, + <&apps_smmu 0x0860 0x40>, + <&apps_smmu 0x0c00 0x00>, + <&apps_smmu 0x0cc0 0x00>, + <&apps_smmu 0x0c80 0x00>, + <&apps_smmu 0x0ca0 0x00>, + <&apps_smmu 0x0d00 0x00>, + <&apps_smmu 0x0d20 0x00>, + <&apps_smmu 0x0d40 0x00>, + <&apps_smmu 0x0d80 0x20>, + <&apps_smmu 0x0da0 0x20>, + <&apps_smmu 0x0de2 0x00>; + + power-domains = <&camcc IFE_0_GDSC>, + <&camcc IFE_1_GDSC>, + <&camcc TITAN_TOP_GDSC>, + <&camcc BPS_GDSC>, + <&camcc IPE_0_GDSC>; + power-domain-names = "ife0", + "ife1", + "top", + "bps", + "ipe"; + + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + }; + + port@1 { + reg = <1>; + }; + + port@2 { + reg = <2>; + }; + }; + }; + camcc: clock-controller@ad00000 { compatible = "qcom,qcs615-camcc"; reg = <0 0x0ad00000 0 0x10000>; -- 2.34.1 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 1/5] arm64: dts: qcom: talos: Add camss node Wenmeng Liu @ 2026-01-15 10:12 ` Wenmeng Liu 2026-01-16 8:28 ` Krzysztof Kozlowski 2026-01-15 10:12 ` [PATCH v3 3/5] arm64: dts: qcom: talos: Add CCI definitions Wenmeng Liu ` (3 subsequent siblings) 5 siblings, 1 reply; 16+ messages in thread From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw) To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Wenmeng Liu Add the sm6150 CCI device string compatible. SM6150 include three clock: bus: Bus clock responsible for data transfer. iface: Interface clock responsible for register read and write. cci: Clock for CCI core operations. Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> --- .../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml index a3fe1eea6aece9685674feaa5ec53765c1ce23d8..3472670fdc908ef8f3b3afc68ff437c0435b69a7 100644 --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml @@ -33,6 +33,7 @@ properties: - qcom,sc8280xp-cci - qcom,sdm670-cci - qcom,sdm845-cci + - qcom,sm6150-cci - qcom,sm6350-cci - qcom,sm8250-cci - qcom,sm8450-cci @@ -263,6 +264,23 @@ allOf: - const: cpas_ahb - const: cci + - if: + properties: + compatible: + contains: + enum: + - qcom,sm6150-cci + then: + properties: + clocks: + minItems: 3 + maxItems: 3 + clock-names: + items: + - const: bus + - const: iface + - const: cci + additionalProperties: false examples: -- 2.34.1 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible 2026-01-15 10:12 ` [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible Wenmeng Liu @ 2026-01-16 8:28 ` Krzysztof Kozlowski 2026-01-16 8:34 ` Wenmeng Liu 0 siblings, 1 reply; 16+ messages in thread From: Krzysztof Kozlowski @ 2026-01-16 8:28 UTC (permalink / raw) To: Wenmeng Liu Cc: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On Thu, Jan 15, 2026 at 06:12:38PM +0800, Wenmeng Liu wrote: > Add the sm6150 CCI device string compatible. > > SM6150 include three clock: > bus: Bus clock responsible for data transfer. > iface: Interface clock responsible for register read and write. > cci: Clock for CCI core operations. > > Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> > Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> > --- > .../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > index a3fe1eea6aece9685674feaa5ec53765c1ce23d8..3472670fdc908ef8f3b3afc68ff437c0435b69a7 100644 > --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > @@ -33,6 +33,7 @@ properties: > - qcom,sc8280xp-cci > - qcom,sdm670-cci > - qcom,sdm845-cci > + - qcom,sm6150-cci > - qcom,sm6350-cci > - qcom,sm8250-cci > - qcom,sm8450-cci > @@ -263,6 +264,23 @@ allOf: > - const: cpas_ahb > - const: cci > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - qcom,sm6150-cci > + then: > + properties: > + clocks: > + minItems: 3 > + maxItems: 3 > + clock-names: > + items: > + - const: bus > + - const: iface > + - const: cci So basically the same as camnoc_axi+cpas_ahb+cci, so just put it into existing enum with qcom,sm8550-cci. I asked for this at v1. https://lore.kernel.org/all/43efa6fd-53c3-4680-8aca-7b37089ca295@kernel.org/ Best regards, Krzysztof ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible 2026-01-16 8:28 ` Krzysztof Kozlowski @ 2026-01-16 8:34 ` Wenmeng Liu 2026-01-16 8:54 ` Krzysztof Kozlowski 2026-01-16 10:59 ` Loic Poulain 0 siblings, 2 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-16 8:34 UTC (permalink / raw) To: Krzysztof Kozlowski Cc: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 1/16/2026 4:28 PM, Krzysztof Kozlowski wrote: > On Thu, Jan 15, 2026 at 06:12:38PM +0800, Wenmeng Liu wrote: >> Add the sm6150 CCI device string compatible. >> >> SM6150 include three clock: >> bus: Bus clock responsible for data transfer. >> iface: Interface clock responsible for register read and write. >> cci: Clock for CCI core operations. >> >> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> >> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> >> --- >> .../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++++++++++++++++++ >> 1 file changed, 18 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >> index a3fe1eea6aece9685674feaa5ec53765c1ce23d8..3472670fdc908ef8f3b3afc68ff437c0435b69a7 100644 >> --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >> +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >> @@ -33,6 +33,7 @@ properties: >> - qcom,sc8280xp-cci >> - qcom,sdm670-cci >> - qcom,sdm845-cci >> + - qcom,sm6150-cci >> - qcom,sm6350-cci >> - qcom,sm8250-cci >> - qcom,sm8450-cci >> @@ -263,6 +264,23 @@ allOf: >> - const: cpas_ahb >> - const: cci >> >> + - if: >> + properties: >> + compatible: >> + contains: >> + enum: >> + - qcom,sm6150-cci >> + then: >> + properties: >> + clocks: >> + minItems: 3 >> + maxItems: 3 >> + clock-names: >> + items: >> + - const: bus >> + - const: iface >> + - const: cci > > So basically the same as camnoc_axi+cpas_ahb+cci, so just put it into > existing enum with qcom,sm8550-cci. > > I asked for this at v1. > https://lore.kernel.org/all/43efa6fd-53c3-4680-8aca-7b37089ca295@kernel.org/ > > > Best regards, > Krzysztof > I raised this question in the previous version. And got reply as: --- me: + clocks = <&camcc CAM_CC_SOC_AHB_CLK>, + <&camcc CAM_CC_CPAS_AHB_CLK>, + <&camcc CAM_CC_CCI_CLK>; + clock-names = "camnoc_axi", + "cpas_ahb", + "cci"; clocks = <&camcc CAM_CC_SOC_AHB_CLK>, clock-names = "camnoc_axi"; If this is acceptable, I will update it this way in the next version. --- Loic: No, the idea is to name the clock from the device’s perspective. For example, from the CCI perspective, you typically have: - A core clock, clocking the logic, which could be named 'core' (but 'cci' here is ok) - Clocks related to the bus interfaces (such as AHB or AXI), which could be named 'iface...' or 'bus...'. This approach clearly identifies the role of each clock and keeps naming consistent, without depending on where the clock originates or its source name. From that standpoint, some of the existing bus clock names defined in qcom,i2c-cci.yaml are not ideal. You can find better naming in bindings like qcom,i2c-qup.yaml or qcom,i2c-geni-qcom.yaml. --- clocks = <&camcc CAM_CC_SOC_AHB_CLK>, clock-names = "camnoc_axi"; so is this acceptable? Thanks, Wenmeng ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible 2026-01-16 8:34 ` Wenmeng Liu @ 2026-01-16 8:54 ` Krzysztof Kozlowski 2026-01-16 10:59 ` Loic Poulain 1 sibling, 0 replies; 16+ messages in thread From: Krzysztof Kozlowski @ 2026-01-16 8:54 UTC (permalink / raw) To: Wenmeng Liu Cc: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 16/01/2026 09:34, Wenmeng Liu wrote: > > > On 1/16/2026 4:28 PM, Krzysztof Kozlowski wrote: >> On Thu, Jan 15, 2026 at 06:12:38PM +0800, Wenmeng Liu wrote: >>> Add the sm6150 CCI device string compatible. >>> >>> SM6150 include three clock: >>> bus: Bus clock responsible for data transfer. >>> iface: Interface clock responsible for register read and write. >>> cci: Clock for CCI core operations. >>> >>> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> >>> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> >>> --- >>> .../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++++++++++++++++++ >>> 1 file changed, 18 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >>> index a3fe1eea6aece9685674feaa5ec53765c1ce23d8..3472670fdc908ef8f3b3afc68ff437c0435b69a7 100644 >>> --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >>> +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml >>> @@ -33,6 +33,7 @@ properties: >>> - qcom,sc8280xp-cci >>> - qcom,sdm670-cci >>> - qcom,sdm845-cci >>> + - qcom,sm6150-cci >>> - qcom,sm6350-cci >>> - qcom,sm8250-cci >>> - qcom,sm8450-cci >>> @@ -263,6 +264,23 @@ allOf: >>> - const: cpas_ahb >>> - const: cci >>> >>> + - if: >>> + properties: >>> + compatible: >>> + contains: >>> + enum: >>> + - qcom,sm6150-cci >>> + then: >>> + properties: >>> + clocks: >>> + minItems: 3 >>> + maxItems: 3 >>> + clock-names: >>> + items: >>> + - const: bus >>> + - const: iface >>> + - const: cci >> >> So basically the same as camnoc_axi+cpas_ahb+cci, so just put it into >> existing enum with qcom,sm8550-cci. >> >> I asked for this at v1. >> https://lore.kernel.org/all/43efa6fd-53c3-4680-8aca-7b37089ca295@kernel.org/ >> >> >> Best regards, >> Krzysztof >> > I raised this question in the previous version. > And got reply as: And I asked to integrate them into existing names at v1. So we have v2 which did not do it, v3 now and your patches are still not reviewed :/ Best regards, Krzysztof ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible 2026-01-16 8:34 ` Wenmeng Liu 2026-01-16 8:54 ` Krzysztof Kozlowski @ 2026-01-16 10:59 ` Loic Poulain 1 sibling, 0 replies; 16+ messages in thread From: Loic Poulain @ 2026-01-16 10:59 UTC (permalink / raw) To: Wenmeng Liu Cc: Krzysztof Kozlowski, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On Fri, Jan 16, 2026 at 9:34 AM Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> wrote: > > > > On 1/16/2026 4:28 PM, Krzysztof Kozlowski wrote: > > On Thu, Jan 15, 2026 at 06:12:38PM +0800, Wenmeng Liu wrote: > >> Add the sm6150 CCI device string compatible. > >> > >> SM6150 include three clock: > >> bus: Bus clock responsible for data transfer. > >> iface: Interface clock responsible for register read and write. > >> cci: Clock for CCI core operations. > >> > >> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> > >> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> > >> --- > >> .../devicetree/bindings/i2c/qcom,i2c-cci.yaml | 18 ++++++++++++++++++ > >> 1 file changed, 18 insertions(+) > >> > >> diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > >> index a3fe1eea6aece9685674feaa5ec53765c1ce23d8..3472670fdc908ef8f3b3afc68ff437c0435b69a7 100644 > >> --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > >> +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml > >> @@ -33,6 +33,7 @@ properties: > >> - qcom,sc8280xp-cci > >> - qcom,sdm670-cci > >> - qcom,sdm845-cci > >> + - qcom,sm6150-cci > >> - qcom,sm6350-cci > >> - qcom,sm8250-cci > >> - qcom,sm8450-cci > >> @@ -263,6 +264,23 @@ allOf: > >> - const: cpas_ahb > >> - const: cci > >> > >> + - if: > >> + properties: > >> + compatible: > >> + contains: > >> + enum: > >> + - qcom,sm6150-cci > >> + then: > >> + properties: > >> + clocks: > >> + minItems: 3 > >> + maxItems: 3 > >> + clock-names: > >> + items: > >> + - const: bus > >> + - const: iface > >> + - const: cci > > > > So basically the same as camnoc_axi+cpas_ahb+cci, so just put it into > > existing enum with qcom,sm8550-cci. > > > > I asked for this at v1. > > https://lore.kernel.org/all/43efa6fd-53c3-4680-8aca-7b37089ca295@kernel.org/ > > > > > > Best regards, > > Krzysztof > > > I raised this question in the previous version. > And got reply as: > > > --- > me: > > + clocks = <&camcc CAM_CC_SOC_AHB_CLK>, > + <&camcc CAM_CC_CPAS_AHB_CLK>, > + <&camcc CAM_CC_CCI_CLK>; > + clock-names = "camnoc_axi", > + "cpas_ahb", > + "cci"; > > > clocks = <&camcc CAM_CC_SOC_AHB_CLK>, > clock-names = "camnoc_axi"; > > If this is acceptable, I will update it this way in the next version. > --- > Loic: > > No, the idea is to name the clock from the device’s perspective. > For example, from the CCI perspective, you typically have: > - A core clock, clocking the logic, which could be named 'core' (but > 'cci' here is ok) > - Clocks related to the bus interfaces (such as AHB or AXI), which > could be named 'iface...' or 'bus...'. > > This approach clearly identifies the role of each clock and keeps > naming consistent, without depending on where the clock originates or > its source name. > > From that standpoint, some of the existing bus clock names defined in > qcom,i2c-cci.yaml are not ideal. You can find better naming in bindings > like qcom,i2c-qup.yaml or qcom,i2c-geni-qcom.yaml. > --- > > > clocks = <&camcc CAM_CC_SOC_AHB_CLK>, > clock-names = "camnoc_axi"; > > so is this acceptable? My answer was mostly meant to expand on Krzysztof’s point about clock naming, but it probably ended up adding more confusion. Unfortunately, we originally picked some poor clock names, such as camnoc_axi. So, if you need to introduce new bindings, you should avoid repeating this pattern. I initially thought you were introducing a new clock set, but apparently your device can match an already existing one. In that case, camnoc_axi should simply be treated as a generic bus clock rather than taken literally, since it is clearly not AXI in this context. Regards, Loic ^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH v3 3/5] arm64: dts: qcom: talos: Add CCI definitions 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 1/5] arm64: dts: qcom: talos: Add camss node Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible Wenmeng Liu @ 2026-01-15 10:12 ` Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 4/5] arm64: dts: qcom: talos: Add camera MCLK pinctrl Wenmeng Liu ` (2 subsequent siblings) 5 siblings, 0 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw) To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Wenmeng Liu Qualcomm Talos SoC contains single controller, containing 2 I2C hosts. Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> --- arch/arm64/boot/dts/qcom/talos.dtsi | 51 +++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/talos.dtsi b/arch/arm64/boot/dts/qcom/talos.dtsi index fe59975d56d6e65163dc7fcce8e08c50fadc3786..162bbe353b62342478885f22972a816f1b60d820 100644 --- a/arch/arm64/boot/dts/qcom/talos.dtsi +++ b/arch/arm64/boot/dts/qcom/talos.dtsi @@ -1554,6 +1554,22 @@ tlmm: pinctrl@3100000 { #interrupt-cells = <2>; wakeup-parent = <&pdc>; + cci_i2c0_default: cci-i2c0-default-state { + /* SDA, SCL */ + pins = "gpio32", "gpio33"; + function = "cci_i2c"; + drive-strength = <2>; + bias-pull-up; + }; + + cci_i2c1_default: cci-i2c1-default-state { + /* SDA, SCL */ + pins = "gpio34", "gpio35"; + function = "cci_i2c"; + drive-strength = <2>; + bias-pull-up; + }; + qup_i2c1_data_clk: qup-i2c1-data-clk-state { pins = "gpio4", "gpio5"; function = "qup0"; @@ -3790,6 +3806,41 @@ videocc: clock-controller@ab00000 { #power-domain-cells = <1>; }; + cci: cci@ac4a000 { + compatible = "qcom,sm6150-cci", "qcom,msm8996-cci"; + + reg = <0x0 0x0ac4a000 0x0 0x4000>; + interrupts = <GIC_SPI 460 IRQ_TYPE_EDGE_RISING 0>; + power-domains = <&camcc TITAN_TOP_GDSC>; + clocks = <&camcc CAM_CC_SOC_AHB_CLK>, + <&camcc CAM_CC_CPAS_AHB_CLK>, + <&camcc CAM_CC_CCI_CLK>; + clock-names = "bus", + "iface", + "cci"; + pinctrl-0 = <&cci_i2c0_default &cci_i2c1_default>; + pinctrl-names = "default"; + + #address-cells = <1>; + #size-cells = <0>; + + status = "disabled"; + + cci_i2c0: i2c-bus@0 { + reg = <0>; + clock-frequency = <1000000>; + #address-cells = <1>; + #size-cells = <0>; + }; + + cci_i2c1: i2c-bus@1 { + reg = <1>; + clock-frequency = <1000000>; + #address-cells = <1>; + #size-cells = <0>; + }; + }; + camss: isp@acb3000 { compatible = "qcom,sm6150-camss"; -- 2.34.1 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v3 4/5] arm64: dts: qcom: talos: Add camera MCLK pinctrl 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu ` (2 preceding siblings ...) 2026-01-15 10:12 ` [PATCH v3 3/5] arm64: dts: qcom: talos: Add CCI definitions Wenmeng Liu @ 2026-01-15 10:12 ` Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay Wenmeng Liu 2026-01-21 9:54 ` [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Andi Shyti 5 siblings, 0 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw) To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Wenmeng Liu, Konrad Dybcio, Dmitry Baryshkov Define pinctrl definitions to enable camera master clocks on Talos. Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> --- arch/arm64/boot/dts/qcom/talos.dtsi | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/talos.dtsi b/arch/arm64/boot/dts/qcom/talos.dtsi index 162bbe353b62342478885f22972a816f1b60d820..f77c7faa97561a0a95974de1a39cc4ba0e43f663 100644 --- a/arch/arm64/boot/dts/qcom/talos.dtsi +++ b/arch/arm64/boot/dts/qcom/talos.dtsi @@ -1554,6 +1554,34 @@ tlmm: pinctrl@3100000 { #interrupt-cells = <2>; wakeup-parent = <&pdc>; + cam0_default: cam0-default-state { + pins = "gpio28"; + function = "cam_mclk"; + drive-strength = <2>; + bias-disable; + }; + + cam1_default: cam1-default-state { + pins = "gpio29"; + function = "cam_mclk"; + drive-strength = <2>; + bias-disable; + }; + + cam2_default: cam2-default-state { + pins = "gpio30"; + function = "cam_mclk"; + drive-strength = <2>; + bias-disable; + }; + + cam3_default: cam3-default-state { + pins = "gpio31"; + function = "cam_mclk"; + drive-strength = <2>; + bias-disable; + }; + cci_i2c0_default: cci-i2c0-default-state { /* SDA, SCL */ pins = "gpio32", "gpio33"; -- 2.34.1 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu ` (3 preceding siblings ...) 2026-01-15 10:12 ` [PATCH v3 4/5] arm64: dts: qcom: talos: Add camera MCLK pinctrl Wenmeng Liu @ 2026-01-15 10:12 ` Wenmeng Liu 2026-01-16 9:12 ` Vladimir Zapolskiy 2026-01-21 9:54 ` [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Andi Shyti 5 siblings, 1 reply; 16+ messages in thread From: Wenmeng Liu @ 2026-01-15 10:12 UTC (permalink / raw) To: Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Wenmeng Liu Enable IMX577 via CCI on Taloss EVK Core Kit. The Talos EVK board does not include a camera sensor by default, this DTSO has enabled the Arducam 12.3MP IMX577 Mini Camera Module on the CSI-1 interface. Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> --- arch/arm64/boot/dts/qcom/Makefile | 3 ++ .../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 ++++++++++++++++++++++ 2 files changed, 66 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile index 00652614e73582fa9bd5fbeff4836b9496721d2d..be9aeff2cd1555bc436e1b8eb78d8e1c9b84f9c4 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -339,8 +339,11 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb +dtbo-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo +talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera-imx577.dtbo talos-evk-lvds-auo,g133han01-dtbs := \ talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtb dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds-auo,g133han01.dtb x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb diff --git a/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso b/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso new file mode 100644 index 0000000000000000000000000000000000000000..53006a861878f9112673b9a0ad954bed7a5fdca5 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso @@ -0,0 +1,63 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. + */ + +/dts-v1/; +/plugin/; + +#include <dt-bindings/clock/qcom,qcs615-camcc.h> +#include <dt-bindings/gpio/gpio.h> + +&camss { + vdd-csiphy-1p2-supply = <&vreg_l11a>; + vdd-csiphy-1p8-supply = <&vreg_l12a>; + + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + csiphy1_ep: endpoint { + data-lanes = <0 1 2 3>; + remote-endpoint = <&imx577_ep1>; + }; + }; + }; +}; + +&cci { + status = "okay"; +}; + +&cci_i2c1 { + #address-cells = <1>; + #size-cells = <0>; + + camera@1a { + compatible = "sony,imx577"; + reg = <0x1a>; + + reset-gpios = <&tlmm 29 GPIO_ACTIVE_LOW>; + pinctrl-0 = <&cam2_default>; + pinctrl-names = "default"; + + clocks = <&camcc CAM_CC_MCLK2_CLK>; + assigned-clocks = <&camcc CAM_CC_MCLK2_CLK>; + assigned-clock-rates = <24000000>; + + avdd-supply = <&vreg_s4a>; + + port { + imx577_ep1: endpoint { + link-frequencies = /bits/ 64 <600000000>; + data-lanes = <1 2 3 4>; + remote-endpoint = <&csiphy1_ep>; + }; + }; + }; +}; -- 2.34.1 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay 2026-01-15 10:12 ` [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay Wenmeng Liu @ 2026-01-16 9:12 ` Vladimir Zapolskiy 2026-01-16 9:32 ` Wenmeng Liu 0 siblings, 1 reply; 16+ messages in thread From: Vladimir Zapolskiy @ 2026-01-16 9:12 UTC (permalink / raw) To: Wenmeng Liu, Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 1/15/26 12:12, Wenmeng Liu wrote: > Enable IMX577 via CCI on Taloss EVK Core Kit. > > The Talos EVK board does not include a camera sensor > by default, this DTSO has enabled the Arducam 12.3MP > IMX577 Mini Camera Module on the CSI-1 interface. > > Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> > --- > arch/arm64/boot/dts/qcom/Makefile | 3 ++ > .../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 ++++++++++++++++++++++ > 2 files changed, 66 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index 00652614e73582fa9bd5fbeff4836b9496721d2d..be9aeff2cd1555bc436e1b8eb78d8e1c9b84f9c4 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -339,8 +339,11 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb > dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb > +dtbo-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo Please remind me, what does dtbo-y Makefile target serve for? > +talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera-imx577.dtbo > talos-evk-lvds-auo,g133han01-dtbs := \ > talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo > +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtb > dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds-auo,g133han01.dtb > x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo > dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb > diff --git a/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso b/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso > new file mode 100644 > index 0000000000000000000000000000000000000000..53006a861878f9112673b9a0ad954bed7a5fdca5 > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso > @@ -0,0 +1,63 @@ > +// SPDX-License-Identifier: BSD-3-Clause > +/* > + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. > + */ > + > +/dts-v1/; > +/plugin/; > + > +#include <dt-bindings/clock/qcom,qcs615-camcc.h> > +#include <dt-bindings/gpio/gpio.h> > + > +&camss { > + vdd-csiphy-1p2-supply = <&vreg_l11a>; > + vdd-csiphy-1p8-supply = <&vreg_l12a>; > + > + status = "okay"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@1 { > + reg = <1>; > + > + csiphy1_ep: endpoint { > + data-lanes = <0 1 2 3>; > + remote-endpoint = <&imx577_ep1>; > + }; > + }; > + }; > +}; > + > +&cci { > + status = "okay"; > +}; > + > +&cci_i2c1 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + camera@1a { > + compatible = "sony,imx577"; > + reg = <0x1a>; > + > + reset-gpios = <&tlmm 29 GPIO_ACTIVE_LOW>; > + pinctrl-0 = <&cam2_default>; > + pinctrl-names = "default"; > + > + clocks = <&camcc CAM_CC_MCLK2_CLK>; > + assigned-clocks = <&camcc CAM_CC_MCLK2_CLK>; > + assigned-clock-rates = <24000000>; > + > + avdd-supply = <&vreg_s4a>; > + > + port { > + imx577_ep1: endpoint { > + link-frequencies = /bits/ 64 <600000000>; > + data-lanes = <1 2 3 4>; > + remote-endpoint = <&csiphy1_ep>; > + }; > + }; > + }; > +}; > Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> -- Best wishes, Vladimir ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay 2026-01-16 9:12 ` Vladimir Zapolskiy @ 2026-01-16 9:32 ` Wenmeng Liu 2026-01-16 9:42 ` Vladimir Zapolskiy 0 siblings, 1 reply; 16+ messages in thread From: Wenmeng Liu @ 2026-01-16 9:32 UTC (permalink / raw) To: Vladimir Zapolskiy, Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 1/16/2026 5:12 PM, Vladimir Zapolskiy wrote: > On 1/15/26 12:12, Wenmeng Liu wrote: >> Enable IMX577 via CCI on Taloss EVK Core Kit. >> >> The Talos EVK board does not include a camera sensor >> by default, this DTSO has enabled the Arducam 12.3MP >> IMX577 Mini Camera Module on the CSI-1 interface. >> >> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> >> --- >> arch/arm64/boot/dts/qcom/Makefile | 3 ++ >> .../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 ++++++++++++ >> ++++++++++ >> 2 files changed, 66 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/ >> qcom/Makefile >> index >> 00652614e73582fa9bd5fbeff4836b9496721d2d..be9aeff2cd1555bc436e1b8eb78d8e1c9b84f9c4 100644 >> --- a/arch/arm64/boot/dts/qcom/Makefile >> +++ b/arch/arm64/boot/dts/qcom/Makefile >> @@ -339,8 +339,11 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb >> dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb >> +dtbo-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo > > Please remind me, what does dtbo-y Makefile target serve for? Rob mentioned: https://lore.kernel.org/all/20260106192609.GA2581379-robh@kernel.org/ I checked, dtbo- is not an upstream usage, it will be updated form dtbo-$(CONFIG_ARCH_QCOM) to dtb-$(CONFIG_ARCH_QCOM) in the next version. Thanks, Wenmeng> >> +talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera- >> imx577.dtbo >> talos-evk-lvds-auo,g133han01-dtbs := \ >> talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo >> +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtb >> dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds-auo,g133han01.dtb >> x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo >> dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit- >> el2.dtb >> diff --git a/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso b/ >> arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso >> new file mode 100644 >> index >> 0000000000000000000000000000000000000000..53006a861878f9112673b9a0ad954bed7a5fdca5 >> --- /dev/null >> +++ b/arch/arm64/boot/dts/qcom/talos-evk-camera-imx577.dtso >> @@ -0,0 +1,63 @@ >> +// SPDX-License-Identifier: BSD-3-Clause >> +/* >> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. >> + */ >> + >> +/dts-v1/; >> +/plugin/; >> + >> +#include <dt-bindings/clock/qcom,qcs615-camcc.h> >> +#include <dt-bindings/gpio/gpio.h> >> + >> +&camss { >> + vdd-csiphy-1p2-supply = <&vreg_l11a>; >> + vdd-csiphy-1p8-supply = <&vreg_l12a>; >> + >> + status = "okay"; >> + >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@1 { >> + reg = <1>; >> + >> + csiphy1_ep: endpoint { >> + data-lanes = <0 1 2 3>; >> + remote-endpoint = <&imx577_ep1>; >> + }; >> + }; >> + }; >> +}; >> + >> +&cci { >> + status = "okay"; >> +}; >> + >> +&cci_i2c1 { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + camera@1a { >> + compatible = "sony,imx577"; >> + reg = <0x1a>; >> + >> + reset-gpios = <&tlmm 29 GPIO_ACTIVE_LOW>; >> + pinctrl-0 = <&cam2_default>; >> + pinctrl-names = "default"; >> + >> + clocks = <&camcc CAM_CC_MCLK2_CLK>; >> + assigned-clocks = <&camcc CAM_CC_MCLK2_CLK>; >> + assigned-clock-rates = <24000000>; >> + >> + avdd-supply = <&vreg_s4a>; >> + >> + port { >> + imx577_ep1: endpoint { >> + link-frequencies = /bits/ 64 <600000000>; >> + data-lanes = <1 2 3 4>; >> + remote-endpoint = <&csiphy1_ep>; >> + }; >> + }; >> + }; >> +}; >> > > Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> > ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay 2026-01-16 9:32 ` Wenmeng Liu @ 2026-01-16 9:42 ` Vladimir Zapolskiy 2026-01-16 10:06 ` Wenmeng Liu 0 siblings, 1 reply; 16+ messages in thread From: Vladimir Zapolskiy @ 2026-01-16 9:42 UTC (permalink / raw) To: Wenmeng Liu, Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 1/16/26 11:32, Wenmeng Liu wrote: > > > On 1/16/2026 5:12 PM, Vladimir Zapolskiy wrote: >> On 1/15/26 12:12, Wenmeng Liu wrote: >>> Enable IMX577 via CCI on Taloss EVK Core Kit. >>> >>> The Talos EVK board does not include a camera sensor >>> by default, this DTSO has enabled the Arducam 12.3MP >>> IMX577 Mini Camera Module on the CSI-1 interface. >>> >>> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> >>> --- >>> arch/arm64/boot/dts/qcom/Makefile | 3 ++ >>> .../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 ++++++++++++ >>> ++++++++++ >>> 2 files changed, 66 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/ >>> qcom/Makefile >>> index >>> 00652614e73582fa9bd5fbeff4836b9496721d2d..be9aeff2cd1555bc436e1b8eb78d8e1c9b84f9c4 100644 >>> --- a/arch/arm64/boot/dts/qcom/Makefile >>> +++ b/arch/arm64/boot/dts/qcom/Makefile >>> @@ -339,8 +339,11 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb >>> +dtbo-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo >> >> Please remind me, what does dtbo-y Makefile target serve for? > Rob mentioned: > https://lore.kernel.org/all/20260106192609.GA2581379-robh@kernel.org/ It'd be better to ask Rob about it, I suppose that the concern may be about a missing in the qcom/Makefile mechanism to build standalone .dtbo artefacts. > I checked, dtbo- is not an upstream usage, it will be updated form Right, that's why it attracted the attention. > dtbo-$(CONFIG_ARCH_QCOM) to dtb-$(CONFIG_ARCH_QCOM) in the next version. > But... >>> +talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera- >>> imx577.dtbo >>> talos-evk-lvds-auo,g133han01-dtbs := \ >>> talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo >>> +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtb it's already here and it was here in the previous version. -- Best wishes, Vladimir ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay 2026-01-16 9:42 ` Vladimir Zapolskiy @ 2026-01-16 10:06 ` Wenmeng Liu 0 siblings, 0 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-16 10:06 UTC (permalink / raw) To: Vladimir Zapolskiy, Loic Poulain, Andi Shyti, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam Cc: linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel On 1/16/2026 5:42 PM, Vladimir Zapolskiy wrote: > On 1/16/26 11:32, Wenmeng Liu wrote: >> >> >> On 1/16/2026 5:12 PM, Vladimir Zapolskiy wrote: >>> On 1/15/26 12:12, Wenmeng Liu wrote: >>>> Enable IMX577 via CCI on Taloss EVK Core Kit. >>>> >>>> The Talos EVK board does not include a camera sensor >>>> by default, this DTSO has enabled the Arducam 12.3MP >>>> IMX577 Mini Camera Module on the CSI-1 interface. >>>> >>>> Signed-off-by: Wenmeng Liu <wenmeng.liu@oss.qualcomm.com> >>>> --- >>>> arch/arm64/boot/dts/qcom/Makefile | 3 ++ >>>> .../boot/dts/qcom/talos-evk-camera-imx577.dtso | 63 ++++++++++++ >>>> ++++++++++ >>>> 2 files changed, 66 insertions(+) >>>> >>>> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/ >>>> qcom/Makefile >>>> index >>>> 00652614e73582fa9bd5fbeff4836b9496721d2d..be9aeff2cd1555bc436e1b8eb78d8e1c9b84f9c4 100644 >>>> --- a/arch/arm64/boot/dts/qcom/Makefile >>>> +++ b/arch/arm64/boot/dts/qcom/Makefile >>>> @@ -339,8 +339,11 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb >>>> +dtbo-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo >>> >>> Please remind me, what does dtbo-y Makefile target serve for? >> Rob mentioned: >> https://lore.kernel.org/all/20260106192609.GA2581379-robh@kernel.org/ > > It'd be better to ask Rob about it, I suppose that the concern may be about > a missing in the qcom/Makefile mechanism to build standalone .dtbo > artefacts. As i checked other platform, dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtbo is ok. talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera-imx577.dtbo this compile only, will not install *.dtbo. > >> I checked, dtbo- is not an upstream usage, it will be updated form > > Right, that's why it attracted the attention. > >> dtbo-$(CONFIG_ARCH_QCOM) to dtb-$(CONFIG_ARCH_QCOM) in the next version. >> > > But... > >>>> +talos-evk-camera-imx577-dtbs := talos-evk.dtb talos-evk-camera- >>>> imx577.dtbo >>>> talos-evk-lvds-auo,g133han01-dtbs := \ >>>> talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo >>>> +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-camera-imx577.dtb > > it's already here and it was here in the previous version. > ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu ` (4 preceding siblings ...) 2026-01-15 10:12 ` [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay Wenmeng Liu @ 2026-01-21 9:54 ` Andi Shyti 2026-01-21 10:08 ` Wenmeng Liu 5 siblings, 1 reply; 16+ messages in thread From: Andi Shyti @ 2026-01-21 9:54 UTC (permalink / raw) To: Wenmeng Liu Cc: Loic Poulain, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Konrad Dybcio, Dmitry Baryshkov Hi Wenmeng, > Wenmeng Liu (5): > arm64: dts: qcom: talos: Add camss node > dt-bindings: i2c: qcom-cci: Document sm6150 compatible I assume you are still going to address Krzysztof's concerns here before merging the whole thing, right? Andi > arm64: dts: qcom: talos: Add CCI definitions > arm64: dts: qcom: talos: Add camera MCLK pinctrl > arm64: dts: qcom: talos-evk-camera: Add DT overlay ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk 2026-01-21 9:54 ` [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Andi Shyti @ 2026-01-21 10:08 ` Wenmeng Liu 0 siblings, 0 replies; 16+ messages in thread From: Wenmeng Liu @ 2026-01-21 10:08 UTC (permalink / raw) To: Andi Shyti Cc: Loic Poulain, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio, Robert Foss, Todor Tomov, Bryan O'Donoghue, Vladimir Zapolskiy, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, linux-i2c, linux-arm-msm, devicetree, linux-kernel, linux-media, imx, linux-arm-kernel, Konrad Dybcio, Dmitry Baryshkov Hi Andi, On 1/21/2026 5:54 PM, Andi Shyti wrote: > Hi Wenmeng, > >> Wenmeng Liu (5): >> arm64: dts: qcom: talos: Add camss node >> dt-bindings: i2c: qcom-cci: Document sm6150 compatible > > I assume you are still going to address Krzysztof's concerns here > before merging the whole thing, right? yes,I will push next version to solve this problem. Thanks. Wenmeng ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2026-01-21 10:08 UTC | newest] Thread overview: 16+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-01-15 10:12 [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 1/5] arm64: dts: qcom: talos: Add camss node Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 2/5] dt-bindings: i2c: qcom-cci: Document sm6150 compatible Wenmeng Liu 2026-01-16 8:28 ` Krzysztof Kozlowski 2026-01-16 8:34 ` Wenmeng Liu 2026-01-16 8:54 ` Krzysztof Kozlowski 2026-01-16 10:59 ` Loic Poulain 2026-01-15 10:12 ` [PATCH v3 3/5] arm64: dts: qcom: talos: Add CCI definitions Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 4/5] arm64: dts: qcom: talos: Add camera MCLK pinctrl Wenmeng Liu 2026-01-15 10:12 ` [PATCH v3 5/5] arm64: dts: qcom: talos-evk-camera: Add DT overlay Wenmeng Liu 2026-01-16 9:12 ` Vladimir Zapolskiy 2026-01-16 9:32 ` Wenmeng Liu 2026-01-16 9:42 ` Vladimir Zapolskiy 2026-01-16 10:06 ` Wenmeng Liu 2026-01-21 9:54 ` [PATCH v3 0/5] Add CCI and imx577 sensor support for Talos evk Andi Shyti 2026-01-21 10:08 ` Wenmeng Liu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox