Linux ARM-MSM sub-architecture
 help / color / mirror / Atom feed
* [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support
@ 2026-01-08 17:05 Loic Poulain
  2026-01-08 17:05 ` [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks Loic Poulain
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Loic Poulain @ 2026-01-08 17:05 UTC (permalink / raw)
  To: andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree,
	Loic Poulain

This series enables initial camera functionality on QRB2210 RB1 with
Vision Mezzanine.It includes device tree updates for camera-related
components and a fix for the OV9282 sensor driver.

- Adds pinctrl configuration for the four camera master clocks (mclks).
- Adds the PM8008 camera PMIC node, which camera power management.
- Introduces an overlay enabling the Vision Mezzanine board with OV9282
  camera sensor support.

Changes in V4:
* Revert to using active-high polarity for reset, as discussed here:
https://marc.info/?l=devicetree&m=176711209404226
* Drop Konrad's review tag from patch 0003, as the reset polarity
was initially a concern.
* I did not reorder the mclk pinctrl entries by GPIO index because
other nodes do not follow this convention, making it difficult to
align without updating all nodes.

Changes in V3:
* Move mclk pinctrls to soc dtsi
* Ensure backward compatibility for ov9282 reset logic
* dts cleanup

Changes in V2:
* Use correct polarity for ov9282 pin
* Fix ov9282 reset pin logic
* Remove always-on from pm8008 regulators

Loic Poulain (3):
  arm64: dts: qcom: qcm2290: Add pin configuration for mclks
  arm64: dts: qcom: qrb2210-rb1: Add PM8008 node
  arm64: dts: qcom: qrb2210-rb1: Add overlay for vision mezzanine

 arch/arm64/boot/dts/qcom/Makefile             |  5 ++
 arch/arm64/boot/dts/qcom/agatti.dtsi          | 28 +++++++
 .../qcom/qrb2210-rb1-vision-mezzanine.dtso    | 66 ++++++++++++++++
 arch/arm64/boot/dts/qcom/qrb2210-rb1.dts      | 75 +++++++++++++++++++
 4 files changed, 174 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/qrb2210-rb1-vision-mezzanine.dtso

-- 
2.34.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks
  2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
@ 2026-01-08 17:05 ` Loic Poulain
  2026-01-08 18:00   ` Vladimir Zapolskiy
  2026-01-08 17:05 ` [PATCH v4 2/3] arm64: dts: qcom: qrb2210-rb1: Add PM8008 node Loic Poulain
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 7+ messages in thread
From: Loic Poulain @ 2026-01-08 17:05 UTC (permalink / raw)
  To: andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree,
	Loic Poulain, Konrad Dybcio

Add pinctrl configuration for the four available camera master clocks.

Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/agatti.dtsi | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/agatti.dtsi b/arch/arm64/boot/dts/qcom/agatti.dtsi
index 992a157c571f..7815ece261ea 100644
--- a/arch/arm64/boot/dts/qcom/agatti.dtsi
+++ b/arch/arm64/boot/dts/qcom/agatti.dtsi
@@ -604,6 +604,34 @@ cci1_default: cci1-default-state {
 				bias-disable;
 			};
 
+			mclk0_default: mclk0-default-state {
+				pins = "gpio20";
+				function = "cam_mclk";
+				drive-strength = <16>;
+				bias-disable;
+			};
+
+			mclk1_default: mclk1-default-state {
+				pins = "gpio21";
+				function = "cam_mclk";
+				drive-strength = <16>;
+				bias-disable;
+			};
+
+			mclk2_default: mclk2-default-state {
+				pins = "gpio27";
+				function = "cam_mclk";
+				drive-strength = <16>;
+				bias-disable;
+			};
+
+			mclk3_default: mclk3-default-state {
+				pins = "gpio28";
+				function = "cam_mclk";
+				drive-strength = <16>;
+				bias-disable;
+			};
+
 			sdc1_state_on: sdc1-on-state {
 				clk-pins {
 					pins = "sdc1_clk";
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v4 2/3] arm64: dts: qcom: qrb2210-rb1: Add PM8008 node
  2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
  2026-01-08 17:05 ` [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks Loic Poulain
@ 2026-01-08 17:05 ` Loic Poulain
  2026-01-08 17:05 ` [PATCH v4 3/3] arm64: dts: qcom: qrb2210-rb1: Add overlay for vision mezzanine Loic Poulain
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Loic Poulain @ 2026-01-08 17:05 UTC (permalink / raw)
  To: andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree,
	Loic Poulain, Dmitry Baryshkov, Konrad Dybcio

The PM8008 device is a dedicated camera PMIC integrating all the necessary
camera power management features.

Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 75 ++++++++++++++++++++++++
 1 file changed, 75 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
index 1b9ca957a94b..9814ac4896c5 100644
--- a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
+++ b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
@@ -267,6 +267,81 @@ &gpu_zap_shader {
 	firmware-name = "qcom/qcm2290/a702_zap.mbn";
 };
 
+&i2c1 {
+	clock-frequency = <400000>;
+
+	status = "okay";
+
+	pm8008: pmic@8 {
+		compatible = "qcom,pm8008";
+		reg = <0x8>;
+
+		interrupts-extended = <&tlmm 25 IRQ_TYPE_EDGE_RISING>;
+		reset-gpios = <&tlmm 26 GPIO_ACTIVE_LOW>;
+
+		vdd-l1-l2-supply = <&pm4125_s3>;
+		vdd-l3-l4-supply = <&vph_pwr>;
+		vdd-l5-supply = <&vph_pwr>;
+		vdd-l6-supply = <&vph_pwr>;
+		vdd-l7-supply = <&vph_pwr>;
+
+		gpio-controller;
+		#gpio-cells = <2>;
+		gpio-ranges = <&pm8008 0 0 2>;
+
+		interrupt-controller;
+		#interrupt-cells = <2>;
+
+		#thermal-sensor-cells = <0>;
+
+		status = "disabled";
+
+		regulators {
+			vreg_l1p: ldo1 {
+				regulator-name = "vreg_l1p";
+				regulator-min-microvolt = <528000>;
+				regulator-max-microvolt = <1200000>;
+			};
+
+			vreg_l2p: ldo2 {
+				regulator-name = "vreg_l2p";
+				regulator-min-microvolt = <528000>;
+				regulator-max-microvolt = <1200000>;
+			};
+
+			vreg_l3p: ldo3 {
+				regulator-name = "vreg_l3p";
+				regulator-min-microvolt = <1500000>;
+				regulator-max-microvolt = <3400000>;
+			};
+
+			vreg_l4p: ldo4 {
+				regulator-name = "vreg_l4p";
+				regulator-min-microvolt = <1500000>;
+				regulator-max-microvolt = <3404000>;
+			};
+
+			vreg_l5p: ldo5 {
+				regulator-name = "vreg_l5p";
+				regulator-min-microvolt = <1500000>;
+				regulator-max-microvolt = <3400000>;
+			};
+
+			vreg_l6p: ldo6 {
+				regulator-name = "vreg_l6p";
+				regulator-min-microvolt = <1500000>;
+				regulator-max-microvolt = <3400000>;
+			};
+
+			vreg_l7p: ldo7 {
+				regulator-name = "vreg_l7p";
+				regulator-min-microvolt = <1500000>;
+				regulator-max-microvolt = <3400000>;
+			};
+		};
+	};
+};
+
 &i2c2_gpio {
 	clock-frequency = <400000>;
 	status = "okay";
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v4 3/3] arm64: dts: qcom: qrb2210-rb1: Add overlay for vision mezzanine
  2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
  2026-01-08 17:05 ` [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks Loic Poulain
  2026-01-08 17:05 ` [PATCH v4 2/3] arm64: dts: qcom: qrb2210-rb1: Add PM8008 node Loic Poulain
@ 2026-01-08 17:05 ` Loic Poulain
  2026-01-09  9:23 ` [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Konrad Dybcio
  2026-01-10 19:11 ` (subset) " Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Loic Poulain @ 2026-01-08 17:05 UTC (permalink / raw)
  To: andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree,
	Loic Poulain, Vladimir Zapolskiy

This initial version includes support for OV9282 camera sensor.

Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
---
 arch/arm64/boot/dts/qcom/Makefile             |  5 ++
 .../qcom/qrb2210-rb1-vision-mezzanine.dtso    | 66 +++++++++++++++++++
 2 files changed, 71 insertions(+)
 create mode 100644 arch/arm64/boot/dts/qcom/qrb2210-rb1-vision-mezzanine.dtso

diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 0ccd6ec16dfb..a5d6f451f85c 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -149,6 +149,11 @@ dtb-$(CONFIG_ARCH_QCOM)	+= qcs9100-ride-r3.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= qdu1000-idp.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= qrb2210-arduino-imola.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= qrb2210-rb1.dtb
+
+qrb2210-rb1-vision-mezzanine-dtbs	:= qrb2210-rb1.dtb qrb2210-rb1-vision-mezzanine.dtbo
+
+dtb-$(CONFIG_ARCH_QCOM)	+= qrb2210-rb1-vision-mezzanine.dtb
+
 dtb-$(CONFIG_ARCH_QCOM)	+= qrb4210-rb2.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= qrb5165-rb5.dtb
 
diff --git a/arch/arm64/boot/dts/qcom/qrb2210-rb1-vision-mezzanine.dtso b/arch/arm64/boot/dts/qcom/qrb2210-rb1-vision-mezzanine.dtso
new file mode 100644
index 000000000000..c314cd6dd484
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/qrb2210-rb1-vision-mezzanine.dtso
@@ -0,0 +1,66 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/clock/qcom,gcc-qcm2290.h>
+#include <dt-bindings/gpio/gpio.h>
+
+&pm8008 {
+	status = "okay";
+};
+
+&camss {
+	status = "okay";
+
+	vdd-csiphy-1p2-supply = <&pm4125_l5>;
+	vdd-csiphy-1p8-supply = <&pm4125_l13>;
+
+	ports {
+		port@0 {
+			csiphy0_ep: endpoint {
+				data-lanes = <0 1>;
+				remote-endpoint = <&ov9282_ep>;
+			};
+		};
+	};
+};
+
+&cci {
+	status = "okay";
+};
+
+&cci_i2c1 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	/* Vision Mezzanine DIP3-1 must be ON (Selects camera CAM0A&B) */
+	camera@60 {
+		compatible = "ovti,ov9282";
+		reg = <0x60>;
+
+		/* Reset is active-low, but driver applies inverted reset logic */
+		reset-gpios = <&tlmm 18 GPIO_ACTIVE_HIGH>;
+		pinctrl-0 = <&mclk3_default>;
+		pinctrl-names = "default";
+
+		clocks = <&gcc GCC_CAMSS_MCLK3_CLK>;
+		assigned-clocks = <&gcc GCC_CAMSS_MCLK3_CLK>;
+		assigned-clock-rates = <24000000>;
+
+		avdd-supply = <&vreg_l3p>;
+		dvdd-supply = <&vreg_l1p>;
+		dovdd-supply = <&vreg_l7p>;
+
+		port {
+			ov9282_ep: endpoint {
+				link-frequencies = /bits/ 64 <400000000>;
+				data-lanes = <1 2>;
+				remote-endpoint = <&csiphy0_ep>;
+                        };
+                };
+	};
+};
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks
  2026-01-08 17:05 ` [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks Loic Poulain
@ 2026-01-08 18:00   ` Vladimir Zapolskiy
  0 siblings, 0 replies; 7+ messages in thread
From: Vladimir Zapolskiy @ 2026-01-08 18:00 UTC (permalink / raw)
  To: Loic Poulain, andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree,
	Konrad Dybcio

On 1/8/26 19:05, Loic Poulain wrote:
> Add pinctrl configuration for the four available camera master clocks.
> 
> Signed-off-by: Loic Poulain <loic.poulain@oss.qualcomm.com>
> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> ---
>   arch/arm64/boot/dts/qcom/agatti.dtsi | 28 ++++++++++++++++++++++++++++
>   1 file changed, 28 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/agatti.dtsi b/arch/arm64/boot/dts/qcom/agatti.dtsi
> index 992a157c571f..7815ece261ea 100644
> --- a/arch/arm64/boot/dts/qcom/agatti.dtsi
> +++ b/arch/arm64/boot/dts/qcom/agatti.dtsi
> @@ -604,6 +604,34 @@ cci1_default: cci1-default-state {
>   				bias-disable;
>   			};
>   
> +			mclk0_default: mclk0-default-state {
> +				pins = "gpio20";
> +				function = "cam_mclk";
> +				drive-strength = <16>;
> +				bias-disable;
> +			};
> +
> +			mclk1_default: mclk1-default-state {
> +				pins = "gpio21";
> +				function = "cam_mclk";
> +				drive-strength = <16>;
> +				bias-disable;
> +			};
> +
> +			mclk2_default: mclk2-default-state {
> +				pins = "gpio27";
> +				function = "cam_mclk";
> +				drive-strength = <16>;
> +				bias-disable;
> +			};
> +
> +			mclk3_default: mclk3-default-state {
> +				pins = "gpio28";
> +				function = "cam_mclk";
> +				drive-strength = <16>;
> +				bias-disable;
> +			};
> +
>   			sdc1_state_on: sdc1-on-state {
>   				clk-pins {
>   					pins = "sdc1_clk";

Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>

-- 
Best wishes,
Vladimir

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support
  2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
                   ` (2 preceding siblings ...)
  2026-01-08 17:05 ` [PATCH v4 3/3] arm64: dts: qcom: qrb2210-rb1: Add overlay for vision mezzanine Loic Poulain
@ 2026-01-09  9:23 ` Konrad Dybcio
  2026-01-10 19:11 ` (subset) " Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Konrad Dybcio @ 2026-01-09  9:23 UTC (permalink / raw)
  To: Loic Poulain, andersson, konradybcio
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree

On 1/8/26 6:05 PM, Loic Poulain wrote:
> This series enables initial camera functionality on QRB2210 RB1 with
> Vision Mezzanine.It includes device tree updates for camera-related
> components and a fix for the OV9282 sensor driver.
> 
> - Adds pinctrl configuration for the four camera master clocks (mclks).
> - Adds the PM8008 camera PMIC node, which camera power management.
> - Introduces an overlay enabling the Vision Mezzanine board with OV9282
>   camera sensor support.
> 
> Changes in V4:
> * Revert to using active-high polarity for reset, as discussed here:
> https://marc.info/?l=devicetree&m=176711209404226

This isn't really a concern, more of a "FYI", but most people use lore.kernel.org
for web mail archive

Konrad

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: (subset) [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support
  2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
                   ` (3 preceding siblings ...)
  2026-01-09  9:23 ` [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Konrad Dybcio
@ 2026-01-10 19:11 ` Bjorn Andersson
  4 siblings, 0 replies; 7+ messages in thread
From: Bjorn Andersson @ 2026-01-10 19:11 UTC (permalink / raw)
  To: konradybcio, Loic Poulain
  Cc: robh, krzk+dt, conor+dt, mchehab, linux-arm-msm, devicetree


On Thu, 08 Jan 2026 18:05:47 +0100, Loic Poulain wrote:
> This series enables initial camera functionality on QRB2210 RB1 with
> Vision Mezzanine.It includes device tree updates for camera-related
> components and a fix for the OV9282 sensor driver.
> 
> - Adds pinctrl configuration for the four camera master clocks (mclks).
> - Adds the PM8008 camera PMIC node, which camera power management.
> - Introduces an overlay enabling the Vision Mezzanine board with OV9282
>   camera sensor support.
> 
> [...]

Applied, thanks!

[2/3] arm64: dts: qcom: qrb2210-rb1: Add PM8008 node
      commit: 141f384413fbeada38f3fa46e2beed9bf8c0f6fe

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-01-10 19:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-08 17:05 [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Loic Poulain
2026-01-08 17:05 ` [PATCH v4 1/3] arm64: dts: qcom: qcm2290: Add pin configuration for mclks Loic Poulain
2026-01-08 18:00   ` Vladimir Zapolskiy
2026-01-08 17:05 ` [PATCH v4 2/3] arm64: dts: qcom: qrb2210-rb1: Add PM8008 node Loic Poulain
2026-01-08 17:05 ` [PATCH v4 3/3] arm64: dts: qcom: qrb2210-rb1: Add overlay for vision mezzanine Loic Poulain
2026-01-09  9:23 ` [PATCH v4 0/3] Add QRB2210 RB1 vision mezzanine/kit support Konrad Dybcio
2026-01-10 19:11 ` (subset) " Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox