* [PATCH 1/4] dt-bindings: i2c: qcom-cci: Document qcs8300 compatible
2025-09-09 11:42 [PATCH 0/4] Add CCI and imx577 sensor support for monaco evk Vikram Sharma
@ 2025-09-09 11:42 ` Vikram Sharma
2025-09-09 11:52 ` Bryan O'Donoghue
2025-09-09 11:42 ` [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions Vikram Sharma
` (2 subsequent siblings)
3 siblings, 1 reply; 19+ messages in thread
From: Vikram Sharma @ 2025-09-09 11:42 UTC (permalink / raw)
To: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel
From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Add device tree bindings for the CCI controller on the
Qualcomm QCS8300 SoC.
Introduce the "qcom,qcs8300-cci" compatible string.
Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
---
Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
index 73144473b9b2..d50359019501 100644
--- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
+++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
@@ -25,6 +25,7 @@ properties:
- items:
- enum:
+ - qcom,qcs8300-cci
- qcom,sc7280-cci
- qcom,sc8280xp-cci
- qcom,sdm670-cci
@@ -223,6 +224,7 @@ allOf:
compatible:
contains:
enum:
+ - qcom,qcs8300-cci
- qcom,sm8550-cci
- qcom,sm8650-cci
- qcom,x1e80100-cci
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH 1/4] dt-bindings: i2c: qcom-cci: Document qcs8300 compatible
2025-09-09 11:42 ` [PATCH 1/4] dt-bindings: i2c: qcom-cci: Document qcs8300 compatible Vikram Sharma
@ 2025-09-09 11:52 ` Bryan O'Donoghue
0 siblings, 0 replies; 19+ messages in thread
From: Bryan O'Donoghue @ 2025-09-09 11:52 UTC (permalink / raw)
To: Vikram Sharma, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel
On 09/09/2025 12:42, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Add device tree bindings for the CCI controller on the
> Qualcomm QCS8300 SoC.
> Introduce the "qcom,qcs8300-cci" compatible string.
>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> index 73144473b9b2..d50359019501 100644
> --- a/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> +++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml
> @@ -25,6 +25,7 @@ properties:
>
> - items:
> - enum:
> + - qcom,qcs8300-cci
> - qcom,sc7280-cci
> - qcom,sc8280xp-cci
> - qcom,sdm670-cci
> @@ -223,6 +224,7 @@ allOf:
> compatible:
> contains:
> enum:
> + - qcom,qcs8300-cci
> - qcom,sm8550-cci
> - qcom,sm8650-cci
> - qcom,x1e80100-cci
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions
2025-09-09 11:42 [PATCH 0/4] Add CCI and imx577 sensor support for monaco evk Vikram Sharma
2025-09-09 11:42 ` [PATCH 1/4] dt-bindings: i2c: qcom-cci: Document qcs8300 compatible Vikram Sharma
@ 2025-09-09 11:42 ` Vikram Sharma
2025-10-08 10:04 ` Konrad Dybcio
2025-09-09 11:42 ` [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay Vikram Sharma
2025-09-09 11:42 ` [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding Vikram Sharma
3 siblings, 1 reply; 19+ messages in thread
From: Vikram Sharma @ 2025-09-09 11:42 UTC (permalink / raw)
To: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel, Ravi Shankar, Vishal Verma
From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Add support for three Camera Control Interface (CCI) controllers
on the Qualcomm QCS8300 SoC. Configure clocks, power domains,
pinctrl states and two I2C buses (i2c0, i2c1) with 1 MHz frequency.
Nodes are added in a disabled state by default.
Co-developed-by: Ravi Shankar <quic_rshankar@quicinc.com>
Signed-off-by: Ravi Shankar <quic_rshankar@quicinc.com>
Co-developed-by: Vishal Verma <quic_vishverm@quicinc.com>
Signed-off-by: Vishal Verma <quic_vishverm@quicinc.com>
Co-developed-by: Suresh Vankadara <quic_svankada@quicinc.com>
Signed-off-by: Suresh Vankadara <quic_svankada@quicinc.com>
Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
---
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 309 ++++++++++++++++++++++++++
1 file changed, 309 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
index a248e269d72d..a69719e291ea 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
@@ -4681,6 +4681,123 @@ videocc: clock-controller@abf0000 {
#power-domain-cells = <1>;
};
+ cci0: cci@ac13000 {
+ compatible = "qcom,qcs8300-cci", "qcom,msm8996-cci";
+ reg = <0x0 0x0ac13000 0x0 0x1000>;
+
+ interrupts = <GIC_SPI 460 IRQ_TYPE_EDGE_RISING>;
+
+ clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
+ <&camcc CAM_CC_CPAS_AHB_CLK>,
+ <&camcc CAM_CC_CCI_0_CLK>;
+ clock-names = "camnoc_axi",
+ "cpas_ahb",
+ "cci";
+
+ power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
+
+ pinctrl-0 = <&cci0_i2c0_default &cci0_i2c1_default>;
+ pinctrl-1 = <&cci0_i2c0_sleep &cci0_i2c1_sleep>;
+ pinctrl-names = "default", "sleep";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+
+ cci0_i2c0: i2c-bus@0 {
+ reg = <0>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ cci0_i2c1: i2c-bus@1 {
+ reg = <1>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ cci1: cci@ac14000 {
+ compatible = "qcom,qcs8300-cci", "qcom,msm8996-cci";
+ reg = <0x0 0x0ac14000 0x0 0x1000>;
+
+ interrupts = <GIC_SPI 271 IRQ_TYPE_EDGE_RISING>;
+
+ clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
+ <&camcc CAM_CC_CPAS_AHB_CLK>,
+ <&camcc CAM_CC_CCI_1_CLK>;
+ clock-names = "camnoc_axi",
+ "cpas_ahb",
+ "cci";
+
+ power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
+
+ pinctrl-0 = <&cci1_i2c0_default &cci1_i2c1_default>;
+ pinctrl-1 = <&cci1_i2c0_sleep &cci1_i2c1_sleep>;
+ pinctrl-names = "default", "sleep";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+
+ cci1_i2c0: i2c-bus@0 {
+ reg = <0>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ cci1_i2c1: i2c-bus@1 {
+ reg = <1>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
+ cci2: cci@ac15000 {
+ compatible = "qcom,qcs8300-cci", "qcom,msm8996-cci";
+ reg = <0x0 0x0ac15000 0x0 0x1000>;
+
+ interrupts = <GIC_SPI 651 IRQ_TYPE_EDGE_RISING>;
+
+ clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
+ <&camcc CAM_CC_CPAS_AHB_CLK>,
+ <&camcc CAM_CC_CCI_2_CLK>;
+ clock-names = "camnoc_axi",
+ "cpas_ahb",
+ "cci";
+
+ power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
+
+ pinctrl-0 = <&cci2_i2c0_default &cci2_i2c1_default>;
+ pinctrl-1 = <&cci2_i2c0_sleep &cci2_i2c1_sleep>;
+ pinctrl-names = "default", "sleep";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+
+ cci2_i2c0: i2c-bus@0 {
+ reg = <0>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ cci2_i2c1: i2c-bus@1 {
+ reg = <1>;
+ clock-frequency = <1000000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+ };
+
camss: isp@ac78000 {
compatible = "qcom,qcs8300-camss";
@@ -4975,6 +5092,198 @@ tlmm: pinctrl@f100000 {
#interrupt-cells = <2>;
wakeup-parent = <&pdc>;
+ cci0_i2c0_default: cci0-0-default-state {
+ sda-pins {
+ pins = "gpio57";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio58";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci0_i2c0_sleep: cci0-0-sleep-state {
+ sda-pins {
+ pins = "gpio57";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio58";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ cci0_i2c1_default: cci0-1-default-state {
+ sda-pins {
+ pins = "gpio29";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio30";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci0_i2c1_sleep: cci0-1-sleep-state {
+ sda-pins {
+ pins = "gpio29";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio30";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ cci1_i2c0_default: cci1-0-default-state {
+ sda-pins {
+ pins = "gpio59";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio60";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci1_i2c0_sleep: cci1-0-sleep-state {
+ sda-pins {
+ pins = "gpio59";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio60";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ cci1_i2c1_default: cci1-1-default-state {
+ sda-pins {
+ pins = "gpio31";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio32";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci1_i2c1_sleep: cci1-1-sleep-state {
+ sda-pins {
+ pins = "gpio31";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio32";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ cci2_i2c0_default: cci2-0-default-state {
+ sda-pins {
+ pins = "gpio61";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio62";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci2_i2c0_sleep: cci2-0-sleep-state {
+ sda-pins {
+ pins = "gpio61";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio62";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ cci2_i2c1_default: cci2-1-default-state {
+ sda-pins {
+ pins = "gpio54";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+
+ scl-pins {
+ pins = "gpio55";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-up = <2200>;
+ };
+ };
+
+ cci2_i2c1_sleep: cci2-1-sleep-state {
+ sda-pins {
+ pins = "gpio54";
+ function = "cci_i2c_sda";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ scl-pins {
+ pins = "gpio55";
+ function = "cci_i2c_scl";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
hs0_mi2s_active: hs0-mi2s-active-state {
pins = "gpio106", "gpio107", "gpio108", "gpio109";
function = "hs0_mi2s";
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions
2025-09-09 11:42 ` [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions Vikram Sharma
@ 2025-10-08 10:04 ` Konrad Dybcio
2025-10-10 12:32 ` Nihal Kumar Gupta
0 siblings, 1 reply; 19+ messages in thread
From: Konrad Dybcio @ 2025-10-08 10:04 UTC (permalink / raw)
To: Vikram Sharma, bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt,
andersson, konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel, Ravi Shankar, Vishal Verma
On 9/9/25 1:42 PM, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Add support for three Camera Control Interface (CCI) controllers
> on the Qualcomm QCS8300 SoC. Configure clocks, power domains,
> pinctrl states and two I2C buses (i2c0, i2c1) with 1 MHz frequency.
> Nodes are added in a disabled state by default.
>
> Co-developed-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Signed-off-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Co-developed-by: Vishal Verma <quic_vishverm@quicinc.com>
> Signed-off-by: Vishal Verma <quic_vishverm@quicinc.com>
> Co-developed-by: Suresh Vankadara <quic_svankada@quicinc.com>
> Signed-off-by: Suresh Vankadara <quic_svankada@quicinc.com>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 309 ++++++++++++++++++++++++++
> 1 file changed, 309 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> index a248e269d72d..a69719e291ea 100644
> --- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> +++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> @@ -4681,6 +4681,123 @@ videocc: clock-controller@abf0000 {
> #power-domain-cells = <1>;
> };
>
> + cci0: cci@ac13000 {
> + compatible = "qcom,qcs8300-cci", "qcom,msm8996-cci";
> + reg = <0x0 0x0ac13000 0x0 0x1000>;
> +
> + interrupts = <GIC_SPI 460 IRQ_TYPE_EDGE_RISING>;
> +
> + clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
> + <&camcc CAM_CC_CPAS_AHB_CLK>,
Does CCI really require all three of these clocks? AXI turned out
not to be necessary on at least some platforms
Konrad
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions
2025-10-08 10:04 ` Konrad Dybcio
@ 2025-10-10 12:32 ` Nihal Kumar Gupta
0 siblings, 0 replies; 19+ messages in thread
From: Nihal Kumar Gupta @ 2025-10-10 12:32 UTC (permalink / raw)
To: Konrad Dybcio, Vikram Sharma, bryan.odonoghue, mchehab, robh,
krzk+dt, conor+dt, andersson, konradybcio, hverkuil-cisco,
cros-qcom-dts-watchers, catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel, Ravi Shankar, Vishal Verma
On 08-10-2025 15:34, Konrad Dybcio wrote:
>> diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> index a248e269d72d..a69719e291ea 100644
>> --- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> @@ -4681,6 +4681,123 @@ videocc: clock-controller@abf0000 {
>> #power-domain-cells = <1>;
>> };
>>
>> + cci0: cci@ac13000 {
>> + compatible = "qcom,qcs8300-cci", "qcom,msm8996-cci";
>> + reg = <0x0 0x0ac13000 0x0 0x1000>;
>> +
>> + interrupts = <GIC_SPI 460 IRQ_TYPE_EDGE_RISING>;
>> +
>> + clocks = <&camcc CAM_CC_CAMNOC_AXI_CLK>,
>> + <&camcc CAM_CC_CPAS_AHB_CLK>,
> Does CCI really require all three of these clocks? AXI turned out
> not to be necessary on at least some platforms
No, the AXI clock is not required for CCI operation, will validate and address the changes in v4.
--
Regards,
Nihal Kumar Gupta
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay
2025-09-09 11:42 [PATCH 0/4] Add CCI and imx577 sensor support for monaco evk Vikram Sharma
2025-09-09 11:42 ` [PATCH 1/4] dt-bindings: i2c: qcom-cci: Document qcs8300 compatible Vikram Sharma
2025-09-09 11:42 ` [PATCH 2/4] arm64: dts: qcom: qcs8300: Add CCI definitions Vikram Sharma
@ 2025-09-09 11:42 ` Vikram Sharma
2025-09-09 14:01 ` Dmitry Baryshkov
2025-09-10 7:01 ` Krzysztof Kozlowski
2025-09-09 11:42 ` [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding Vikram Sharma
3 siblings, 2 replies; 19+ messages in thread
From: Vikram Sharma @ 2025-09-09 11:42 UTC (permalink / raw)
To: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel, Ravi Shankar, Vishal Verma
From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Enable IMX577 sensor using the CCI1 interface on Monaco EVK.
Camera reset is controlled through an I2C expander,
and power supply is managed via tlmm GPIO74.
Co-developed-by: Ravi Shankar <quic_rshankar@quicinc.com>
Signed-off-by: Ravi Shankar <quic_rshankar@quicinc.com>
Co-developed-by: Vishal Verma <quic_vishverm@quicinc.com>
Signed-off-by: Vishal Verma <quic_vishverm@quicinc.com>
Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
---
arch/arm64/boot/dts/qcom/Makefile | 4 +
.../boot/dts/qcom/monaco-evk-camera.dtso | 98 +++++++++++++++++++
2 files changed, 102 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 0e4e0e0b833b..714eb4badf5a 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -31,6 +31,10 @@ dtb-$(CONFIG_ARCH_QCOM) += ipq9574-rdp453.dtb
dtb-$(CONFIG_ARCH_QCOM) += ipq9574-rdp454.dtb
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk.dtb
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk.dtb
+
+monaco-evk-camera-dtbs := monaco-evk.dtb monaco-evk-camera.dtbo
+
+dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-camera.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
diff --git a/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
new file mode 100644
index 000000000000..5831b4de6eca
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
@@ -0,0 +1,98 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved.
+ */
+
+/* Camera Sensor overlay on top of Monaco EVK Core Kit */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/clock/qcom,sa8775p-camcc.h>
+#include <dt-bindings/gpio/gpio.h>
+
+&{/} {
+ vreg_cam1_2p8: vreg_cam1_2p8 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_cam1_2p8";
+ startup-delay-us = <10000>;
+ enable-active-high;
+ gpio = <&tlmm 74 GPIO_ACTIVE_HIGH>;
+ };
+};
+
+&camss {
+ vdda-pll-supply = <&vreg_l5a>;
+ vdda-phy-supply = <&vreg_l4a>;
+
+ status = "okay";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@1 {
+ reg = <1>;
+
+ csiphy1_ep: endpoint {
+ clock-lanes = <7>;
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&imx577_ep1>;
+ };
+ };
+ };
+};
+
+&cci1 {
+ pinctrl-0 = <&cci1_i2c0_default>;
+ pinctrl-1 = <&cci1_i2c0_sleep>;
+
+ status = "okay";
+};
+
+&cci1_i2c0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ camera@1a {
+ compatible = "sony,imx577";
+ reg = <0x1a>;
+
+ reset-gpios = <&expander2 1 GPIO_ACTIVE_LOW>;
+ pinctrl-0 = <&cam1_default>;
+ pinctrl-names = "default";
+
+ clocks = <&camcc CAM_CC_MCLK1_CLK>;
+ assigned-clocks = <&camcc CAM_CC_MCLK1_CLK>;
+ assigned-clock-rates = <24000000>;
+
+ avdd-supply = <&vreg_cam1_2p8>;
+
+ port {
+ imx577_ep1: endpoint {
+ clock-lanes = <7>;
+ link-frequencies = /bits/ 64 <600000000>;
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&csiphy1_ep>;
+ };
+ };
+ };
+};
+
+&tlmm {
+ cam1_default: cam1-default-state {
+ mclk-pins {
+ pins = "gpio68";
+ function = "cam_mclk";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ ldo-avdd-pins {
+ pins = "gpio74";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
+ };
+ };
+};
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay
2025-09-09 11:42 ` [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay Vikram Sharma
@ 2025-09-09 14:01 ` Dmitry Baryshkov
[not found] ` <8104bb41-e827-4daa-bc96-9b6678a9d345@quicinc.com>
2025-09-10 7:01 ` Krzysztof Kozlowski
1 sibling, 1 reply; 19+ messages in thread
From: Dmitry Baryshkov @ 2025-09-09 14:01 UTC (permalink / raw)
To: Vikram Sharma
Cc: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will, linux-arm-kernel, quic_svankada,
linux-media, linux-arm-msm, devicetree, linux-kernel,
Ravi Shankar, Vishal Verma
On Tue, Sep 09, 2025 at 05:12:40PM +0530, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Enable IMX577 sensor using the CCI1 interface on Monaco EVK.
> Camera reset is controlled through an I2C expander,
> and power supply is managed via tlmm GPIO74.
Why is done as an overlay? Is it a seprate mezzanine?
>
> Co-developed-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Signed-off-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Co-developed-by: Vishal Verma <quic_vishverm@quicinc.com>
> Signed-off-by: Vishal Verma <quic_vishverm@quicinc.com>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/Makefile | 4 +
> .../boot/dts/qcom/monaco-evk-camera.dtso | 98 +++++++++++++++++++
> 2 files changed, 102 insertions(+)
> create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
>
> diff --git a/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
> new file mode 100644
> index 000000000000..5831b4de6eca
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
> @@ -0,0 +1,98 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved.
> + */
> +
> +/* Camera Sensor overlay on top of Monaco EVK Core Kit */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/clock/qcom,sa8775p-camcc.h>
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&{/} {
Is this a different product than just Monaco EVK?
> + vreg_cam1_2p8: vreg_cam1_2p8 {
> + compatible = "regulator-fixed";
> + regulator-name = "vreg_cam1_2p8";
> + startup-delay-us = <10000>;
> + enable-active-high;
> + gpio = <&tlmm 74 GPIO_ACTIVE_HIGH>;
> + };
> +};
> +
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay
2025-09-09 11:42 ` [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay Vikram Sharma
2025-09-09 14:01 ` Dmitry Baryshkov
@ 2025-09-10 7:01 ` Krzysztof Kozlowski
1 sibling, 0 replies; 19+ messages in thread
From: Krzysztof Kozlowski @ 2025-09-10 7:01 UTC (permalink / raw)
To: Vikram Sharma, bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt,
andersson, konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel, Ravi Shankar, Vishal Verma
On 09/09/2025 13:42, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Enable IMX577 sensor using the CCI1 interface on Monaco EVK.
> Camera reset is controlled through an I2C expander,
> and power supply is managed via tlmm GPIO74.
>
> Co-developed-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Signed-off-by: Ravi Shankar <quic_rshankar@quicinc.com>
> Co-developed-by: Vishal Verma <quic_vishverm@quicinc.com>
> Signed-off-by: Vishal Verma <quic_vishverm@quicinc.com>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/Makefile | 4 +
> .../boot/dts/qcom/monaco-evk-camera.dtso | 98 +++++++++++++++++++
> 2 files changed, 102 insertions(+)
> create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
>
> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
> index 0e4e0e0b833b..714eb4badf5a 100644
> --- a/arch/arm64/boot/dts/qcom/Makefile
> +++ b/arch/arm64/boot/dts/qcom/Makefile
> @@ -31,6 +31,10 @@ dtb-$(CONFIG_ARCH_QCOM) += ipq9574-rdp453.dtb
> dtb-$(CONFIG_ARCH_QCOM) += ipq9574-rdp454.dtb
> dtb-$(CONFIG_ARCH_QCOM) += lemans-evk.dtb
> dtb-$(CONFIG_ARCH_QCOM) += monaco-evk.dtb
> +
> +monaco-evk-camera-dtbs := monaco-evk.dtb monaco-evk-camera.dtbo
> +
> +dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-camera.dtb
Missing proper indentation before +=. Did you even look at this code
while changing? Or you just copied it from downstream and sent?
> dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
> dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
> dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
> diff --git a/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
> new file mode 100644
> index 000000000000..5831b4de6eca
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/monaco-evk-camera.dtso
> @@ -0,0 +1,98 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved.
> + */
> +
> +/* Camera Sensor overlay on top of Monaco EVK Core Kit */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/clock/qcom,sa8775p-camcc.h>
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&{/} {
> + vreg_cam1_2p8: vreg_cam1_2p8 {
Don't send us downstream code. You need to rewrite everything, not just
pieces.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding
2025-09-09 11:42 [PATCH 0/4] Add CCI and imx577 sensor support for monaco evk Vikram Sharma
` (2 preceding siblings ...)
2025-09-09 11:42 ` [PATCH 3/4] arm64: dts: qcom: monaco-evk-camera: Add DT overlay Vikram Sharma
@ 2025-09-09 11:42 ` Vikram Sharma
2025-09-09 14:00 ` Dmitry Baryshkov
2025-09-10 7:02 ` Krzysztof Kozlowski
3 siblings, 2 replies; 19+ messages in thread
From: Vikram Sharma @ 2025-09-09 11:42 UTC (permalink / raw)
To: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel
From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Add vdda-phy-supply and vdda-pll-supply to the qcom,qcs8300-camss binding.
Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
---
.../bindings/media/qcom,qcs8300-camss.yaml | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml b/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
index 80a4540a22dc..559db6d67f06 100644
--- a/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
+++ b/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
@@ -120,6 +120,14 @@ properties:
items:
- const: top
+ vdda-phy-supply:
+ description:
+ Phandle to a regulator supply to PHY core block.
+
+ vdda-pll-supply:
+ description:
+ Phandle to 1.8V regulator supply to PHY refclk pll block.
+
ports:
$ref: /schemas/graph.yaml#/properties/ports
@@ -158,6 +166,8 @@ required:
- interconnect-names
- iommus
- power-domains
+ - vdda-phy-supply
+ - vdda-pll-supply
- power-domain-names
- ports
@@ -328,6 +338,9 @@ examples:
power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
power-domain-names = "top";
+ vdda-phy-supply = <&vreg_l4a_0p88>;
+ vdda-pll-supply = <&vreg_l1c_1p2>;
+
ports {
#address-cells = <1>;
#size-cells = <0>;
--
2.25.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding
2025-09-09 11:42 ` [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding Vikram Sharma
@ 2025-09-09 14:00 ` Dmitry Baryshkov
2025-09-10 7:02 ` Krzysztof Kozlowski
1 sibling, 0 replies; 19+ messages in thread
From: Dmitry Baryshkov @ 2025-09-09 14:00 UTC (permalink / raw)
To: Vikram Sharma
Cc: bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt, andersson,
konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will, linux-arm-kernel, quic_svankada,
linux-media, linux-arm-msm, devicetree, linux-kernel
On Tue, Sep 09, 2025 at 05:12:41PM +0530, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Add vdda-phy-supply and vdda-pll-supply to the qcom,qcs8300-camss binding.
Don't describe patch contents.
>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> .../bindings/media/qcom,qcs8300-camss.yaml | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml b/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
> index 80a4540a22dc..559db6d67f06 100644
> --- a/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
> +++ b/Documentation/devicetree/bindings/media/qcom,qcs8300-camss.yaml
> @@ -120,6 +120,14 @@ properties:
> items:
> - const: top
>
> + vdda-phy-supply:
> + description:
> + Phandle to a regulator supply to PHY core block.
> +
> + vdda-pll-supply:
> + description:
> + Phandle to 1.8V regulator supply to PHY refclk pll block.
> +
> ports:
> $ref: /schemas/graph.yaml#/properties/ports
>
> @@ -158,6 +166,8 @@ required:
> - interconnect-names
> - iommus
> - power-domains
> + - vdda-phy-supply
> + - vdda-pll-supply
> - power-domain-names
> - ports
>
> @@ -328,6 +338,9 @@ examples:
> power-domains = <&camcc CAM_CC_TITAN_TOP_GDSC>;
> power-domain-names = "top";
>
> + vdda-phy-supply = <&vreg_l4a_0p88>;
> + vdda-pll-supply = <&vreg_l1c_1p2>;
> +
> ports {
> #address-cells = <1>;
> #size-cells = <0>;
> --
> 2.25.1
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 19+ messages in thread* Re: [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding
2025-09-09 11:42 ` [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding Vikram Sharma
2025-09-09 14:00 ` Dmitry Baryshkov
@ 2025-09-10 7:02 ` Krzysztof Kozlowski
2025-09-10 11:41 ` Bryan O'Donoghue
1 sibling, 1 reply; 19+ messages in thread
From: Krzysztof Kozlowski @ 2025-09-10 7:02 UTC (permalink / raw)
To: Vikram Sharma, bryan.odonoghue, mchehab, robh, krzk+dt, conor+dt,
andersson, konradybcio, hverkuil-cisco, cros-qcom-dts-watchers,
catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel
On 09/09/2025 13:42, Vikram Sharma wrote:
> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>
> Add vdda-phy-supply and vdda-pll-supply to the qcom,qcs8300-camss binding.
>
> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
> ---
> .../bindings/media/qcom,qcs8300-camss.yaml | 13 +++++++++++++
There is no such file. Why are you not fixing the patches on the list?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 4/4] dt-bindings: media: camss: Add qcs8300 supplies binding
2025-09-10 7:02 ` Krzysztof Kozlowski
@ 2025-09-10 11:41 ` Bryan O'Donoghue
0 siblings, 0 replies; 19+ messages in thread
From: Bryan O'Donoghue @ 2025-09-10 11:41 UTC (permalink / raw)
To: Krzysztof Kozlowski, Vikram Sharma, mchehab, robh, krzk+dt,
conor+dt, andersson, konradybcio, hverkuil-cisco,
cros-qcom-dts-watchers, catalin.marinas, will
Cc: linux-arm-kernel, quic_svankada, linux-media, linux-arm-msm,
devicetree, linux-kernel
On 10/09/2025 08:02, Krzysztof Kozlowski wrote:
> On 09/09/2025 13:42, Vikram Sharma wrote:
>> From: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>>
>> Add vdda-phy-supply and vdda-pll-supply to the qcom,qcs8300-camss binding.
>>
>> Signed-off-by: Nihal Kumar Gupta <quic_nihalkum@quicinc.com>
>> Signed-off-by: Vikram Sharma <quic_vikramsa@quicinc.com>
>> ---
>> .../bindings/media/qcom,qcs8300-camss.yaml | 13 +++++++++++++
>
> There is no such file. Why are you not fixing the patches on the list?
>
>
> Best regards,
> Krzysztof
The easiest thing for me to do here is to take this patch and send out
another PR.
I can fix the commit log too.
---
bod
^ permalink raw reply [flat|nested] 19+ messages in thread