diff mbox series

[v2,4/7] arm64: dts: ti: k3-j721e-sk: Add requiried voltage supplies for IMX219

Message ID 20250409134128.2098195-5-y-abhilashchandra@ti.com (mailing list archive)
State New
Headers show
Series Fix dtbs_check warnings in CSI overlays | expand

Commit Message

Yemike Abhilash Chandra April 9, 2025, 1:41 p.m. UTC
The device tree overlay for the IMX219 sensor requires three voltage
supplies to be defined: VANA (analog), VDIG (digital core), and VDDL
(digital I/O). Add the corresponding voltage supply definitions to avoid
dtbs_check warnings.

Fixes: f767eb918096 ("arm64: dts: ti: k3-j721e-sk: Add overlay for IMX219")
Cc: stable@vger.kernel.org
Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com>
---
 .../dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso  | 33 +++++++++++++++++++
 1 file changed, 33 insertions(+)

Comments

Francis, Neha April 11, 2025, 1:38 p.m. UTC | #1
On 4/9/2025 7:11 PM, Yemike Abhilash Chandra wrote:
> The device tree overlay for the IMX219 sensor requires three voltage
> supplies to be defined: VANA (analog), VDIG (digital core), and VDDL
> (digital I/O). Add the corresponding voltage supply definitions to avoid
> dtbs_check warnings.
> 
> Fixes: f767eb918096 ("arm64: dts: ti: k3-j721e-sk: Add overlay for IMX219")
> Cc: stable@vger.kernel.org
> Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com>
> ---
>  .../dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso  | 33 +++++++++++++++++++
>  1 file changed, 33 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
> index 4a395d1209c8..4eb3cffab032 100644
> --- a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
> +++ b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso

The link to the schematics seems to need updation, would like to see where these
regulators are mentioned, can't find them in [0] which I assume is the latest link.

> @@ -19,6 +19,33 @@ clk_imx219_fixed: imx219-xclk {
>  		#clock-cells = <0>;
>  		clock-frequency = <24000000>;
>  	};
> +
> +	reg_2p8v: regulator-2p8v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "2P8V";
> +		regulator-min-microvolt = <2800000>;
> +		regulator-max-microvolt = <2800000>;
> +		vin-supply = <&vdd_sd_dv>;
> +		regulator-always-on;
> +	};
> +
> +	reg_1p8v: regulator-1p8v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "1P8V";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +		vin-supply = <&vdd_sd_dv>;
> +		regulator-always-on;
> +	};
> +
> +	reg_1p2v: regulator-1p2v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "1P2V";
> +		regulator-min-microvolt = <1200000>;
> +		regulator-max-microvolt = <1200000>;
> +		vin-supply = <&vdd_sd_dv>;
> +		regulator-always-on;
> +	};
>  };
>  
>  &csi_mux {
> @@ -34,6 +61,9 @@ imx219_0: imx219-0@10 {
>  		reg = <0x10>;
>  
>  		clocks = <&clk_imx219_fixed>;
> +		VANA-supply = <&reg_2p8v>;
> +		VDIG-supply = <&reg_1p8v>;
> +		VDDL-supply = <&reg_1p2v>;
>  
>  		port {
>  			csi2_cam0: endpoint {
> @@ -55,6 +85,9 @@ imx219_1: imx219-1@10 {
>  		reg = <0x10>;
>  
>  		clocks = <&clk_imx219_fixed>;
> +		VANA-supply = <&reg_2p8v>;
> +		VDIG-supply = <&reg_1p8v>;
> +		VDDL-supply = <&reg_1p2v>;
>  
>  		port {
>  			csi2_cam1: endpoint {
[0] https://datasheets.raspberrypi.com/camera/camera-module-2-schematics.pdf
Yemike Abhilash Chandra April 14, 2025, 11:40 a.m. UTC | #2
Hi Neha,

On 11/04/25 19:08, Francis, Neha wrote:
> On 4/9/2025 7:11 PM, Yemike Abhilash Chandra wrote:
>> The device tree overlay for the IMX219 sensor requires three voltage
>> supplies to be defined: VANA (analog), VDIG (digital core), and VDDL
>> (digital I/O). Add the corresponding voltage supply definitions to avoid
>> dtbs_check warnings.
>>
>> Fixes: f767eb918096 ("arm64: dts: ti: k3-j721e-sk: Add overlay for IMX219")
>> Cc: stable@vger.kernel.org
>> Signed-off-by: Yemike Abhilash Chandra <y-abhilashchandra@ti.com>
>> ---
>>   .../dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso  | 33 +++++++++++++++++++
>>   1 file changed, 33 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
>> index 4a395d1209c8..4eb3cffab032 100644
>> --- a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
>> +++ b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
> 
> The link to the schematics seems to need updation, would like to see where these
> regulators are mentioned, can't find them in [0] which I assume is the latest link.
> 

Yes, It seems that the link to the schematics has been changed.
I will submit a separate patch to fix that.

While the regulators are not clearly documented in the schematics,
the voltage levels can be observed in the top-right corner of the 
schematics.

However, the required regulators are explicitly described in the device 
tree bindings.
Please refer: ./Documentation/devicetree/bindings/media/i2c/imx219.yaml

Thanks and Regards
Yemike Abhilash Chandra


>> @@ -19,6 +19,33 @@ clk_imx219_fixed: imx219-xclk {
>>   		#clock-cells = <0>;
>>   		clock-frequency = <24000000>;
>>   	};
>> +
>> +	reg_2p8v: regulator-2p8v {
>> +		compatible = "regulator-fixed";
>> +		regulator-name = "2P8V";
>> +		regulator-min-microvolt = <2800000>;
>> +		regulator-max-microvolt = <2800000>;
>> +		vin-supply = <&vdd_sd_dv>;
>> +		regulator-always-on;
>> +	};
>> +
>> +	reg_1p8v: regulator-1p8v {
>> +		compatible = "regulator-fixed";
>> +		regulator-name = "1P8V";
>> +		regulator-min-microvolt = <1800000>;
>> +		regulator-max-microvolt = <1800000>;
>> +		vin-supply = <&vdd_sd_dv>;
>> +		regulator-always-on;
>> +	};
>> +
>> +	reg_1p2v: regulator-1p2v {
>> +		compatible = "regulator-fixed";
>> +		regulator-name = "1P2V";
>> +		regulator-min-microvolt = <1200000>;
>> +		regulator-max-microvolt = <1200000>;
>> +		vin-supply = <&vdd_sd_dv>;
>> +		regulator-always-on;
>> +	};
>>   };
>>   
>>   &csi_mux {
>> @@ -34,6 +61,9 @@ imx219_0: imx219-0@10 {
>>   		reg = <0x10>;
>>   
>>   		clocks = <&clk_imx219_fixed>;
>> +		VANA-supply = <&reg_2p8v>;
>> +		VDIG-supply = <&reg_1p8v>;
>> +		VDDL-supply = <&reg_1p2v>;
>>   
>>   		port {
>>   			csi2_cam0: endpoint {
>> @@ -55,6 +85,9 @@ imx219_1: imx219-1@10 {
>>   		reg = <0x10>;
>>   
>>   		clocks = <&clk_imx219_fixed>;
>> +		VANA-supply = <&reg_2p8v>;
>> +		VDIG-supply = <&reg_1p8v>;
>> +		VDDL-supply = <&reg_1p2v>;
>>   
>>   		port {
>>   			csi2_cam1: endpoint {
> [0] https://datasheets.raspberrypi.com/camera/camera-module-2-schematics.pdf
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
index 4a395d1209c8..4eb3cffab032 100644
--- a/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
+++ b/arch/arm64/boot/dts/ti/k3-j721e-sk-csi2-dual-imx219.dtso
@@ -19,6 +19,33 @@  clk_imx219_fixed: imx219-xclk {
 		#clock-cells = <0>;
 		clock-frequency = <24000000>;
 	};
+
+	reg_2p8v: regulator-2p8v {
+		compatible = "regulator-fixed";
+		regulator-name = "2P8V";
+		regulator-min-microvolt = <2800000>;
+		regulator-max-microvolt = <2800000>;
+		vin-supply = <&vdd_sd_dv>;
+		regulator-always-on;
+	};
+
+	reg_1p8v: regulator-1p8v {
+		compatible = "regulator-fixed";
+		regulator-name = "1P8V";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		vin-supply = <&vdd_sd_dv>;
+		regulator-always-on;
+	};
+
+	reg_1p2v: regulator-1p2v {
+		compatible = "regulator-fixed";
+		regulator-name = "1P2V";
+		regulator-min-microvolt = <1200000>;
+		regulator-max-microvolt = <1200000>;
+		vin-supply = <&vdd_sd_dv>;
+		regulator-always-on;
+	};
 };
 
 &csi_mux {
@@ -34,6 +61,9 @@  imx219_0: imx219-0@10 {
 		reg = <0x10>;
 
 		clocks = <&clk_imx219_fixed>;
+		VANA-supply = <&reg_2p8v>;
+		VDIG-supply = <&reg_1p8v>;
+		VDDL-supply = <&reg_1p2v>;
 
 		port {
 			csi2_cam0: endpoint {
@@ -55,6 +85,9 @@  imx219_1: imx219-1@10 {
 		reg = <0x10>;
 
 		clocks = <&clk_imx219_fixed>;
+		VANA-supply = <&reg_2p8v>;
+		VDIG-supply = <&reg_1p8v>;
+		VDDL-supply = <&reg_1p2v>;
 
 		port {
 			csi2_cam1: endpoint {