[RFT] arm64: dts: qcom: sdm850-c630: add missing panel supply

Message ID 20230617171512.286795-1-krzysztof.kozlowski@linaro.org
State New
Headers
Series [RFT] arm64: dts: qcom: sdm850-c630: add missing panel supply |

Commit Message

Krzysztof Kozlowski June 17, 2023, 5:15 p.m. UTC
  Panel bindings (boe,nv133fhm-n61) require supply which here actually can
be turned on/off via GPIO control:

  sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Not tested on hardware
---
 .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)
  

Comments

Konrad Dybcio June 19, 2023, 1:16 p.m. UTC | #1
On 17.06.2023 19:15, Krzysztof Kozlowski wrote:
> Panel bindings (boe,nv133fhm-n61) require supply which here actually can
> be turned on/off via GPIO control:
> 
>   sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Not tested on hardware
> ---
+Steev

Konrad
>  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 20 +++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> index cfbc4fc1eba9..3d871567cf81 100644
> --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> @@ -87,6 +87,25 @@ sn65dsi86_refclk: sn65dsi86-refclk {
>  		clock-frequency = <19200000>;
>  	};
>  
> +	vph_pwr: regulator-vph-pwr {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vph_pwr";
> +		regulator-min-microvolt = <3700000>;
> +		regulator-max-microvolt = <3700000>;
> +	};
> +
> +	vlcm_3v3: regulator-vlcm-3v3 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vlcm_3v3";
> +
> +		vin-supply = <&vph_pwr>;
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +
> +		gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
> +		enable-active-high;
> +	};
> +
>  	backlight: backlight {
>  		compatible = "pwm-backlight";
>  		pwms = <&sn65dsi86 1000000>;
> @@ -419,6 +438,7 @@ aux-bus {
>  			panel: panel {
>  				compatible = "boe,nv133fhm-n61";
>  				backlight = <&backlight>;
> +				power-supply = <&vlcm_3v3>;
>  
>  				port {
>  					panel_in_edp: endpoint {
  
Steev Klimaszewski June 19, 2023, 2:11 p.m. UTC | #2
On Mon, Jun 19, 2023 at 8:16 AM Konrad Dybcio <konrad.dybcio@linaro.org> wrote:
>
> On 17.06.2023 19:15, Krzysztof Kozlowski wrote:
> > Panel bindings (boe,nv133fhm-n61) require supply which here actually can
> > be turned on/off via GPIO control:
> >
> >   sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property
> >
> > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> >
> > ---
> >
> > Not tested on hardware
> > ---
> +Steev
>
> Konrad
> >  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 20 +++++++++++++++++++
> >  1 file changed, 20 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> > index cfbc4fc1eba9..3d871567cf81 100644
> > --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> > +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> > @@ -87,6 +87,25 @@ sn65dsi86_refclk: sn65dsi86-refclk {
> >               clock-frequency = <19200000>;
> >       };
> >
> > +     vph_pwr: regulator-vph-pwr {
> > +             compatible = "regulator-fixed";
> > +             regulator-name = "vph_pwr";
> > +             regulator-min-microvolt = <3700000>;
> > +             regulator-max-microvolt = <3700000>;
> > +     };
> > +
> > +     vlcm_3v3: regulator-vlcm-3v3 {
> > +             compatible = "regulator-fixed";
> > +             regulator-name = "vlcm_3v3";
> > +
> > +             vin-supply = <&vph_pwr>;
> > +             regulator-min-microvolt = <3300000>;
> > +             regulator-max-microvolt = <3300000>;
> > +
> > +             gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
> > +             enable-active-high;
> > +     };
> > +
> >       backlight: backlight {
> >               compatible = "pwm-backlight";
> >               pwms = <&sn65dsi86 1000000>;
> > @@ -419,6 +438,7 @@ aux-bus {
> >                       panel: panel {
> >                               compatible = "boe,nv133fhm-n61";
> >                               backlight = <&backlight>;
> > +                             power-supply = <&vlcm_3v3>;
> >
> >                               port {
> >                                       panel_in_edp: endpoint {

I've tested this on my c630, which does have the nv133fhm-n61,
however... the c630 has 2 different LCD panels available, and I do not
have a c630 which has the other panel (anymore).  I reached out on IRC
to the person who has it, but have not yet heard back.

-- steev
  
Caleb Connolly June 24, 2023, 2:56 p.m. UTC | #3
On 17/06/2023 17:15, Krzysztof Kozlowski wrote:
> Panel bindings (boe,nv133fhm-n61) require supply which here actually can
> be turned on/off via GPIO control:
> 
>   sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

I've been running an equivalent patch for a while, so

Tested-by: Caleb Connolly <caleb.connolly@linaro.org>

The dsi bridge vcc and vcca supplies are also missing, they're powered
from vreg_l2a_1p2 and controlled by pm8998_gpio 9.
> 
> ---
> 
> Not tested on hardware
> ---
>  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 20 +++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> index cfbc4fc1eba9..3d871567cf81 100644
> --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> @@ -87,6 +87,25 @@ sn65dsi86_refclk: sn65dsi86-refclk {
>  		clock-frequency = <19200000>;
>  	};
>  
> +	vph_pwr: regulator-vph-pwr {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vph_pwr";
> +		regulator-min-microvolt = <3700000>;
> +		regulator-max-microvolt = <3700000>;
> +	};
> +
> +	vlcm_3v3: regulator-vlcm-3v3 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "vlcm_3v3";
> +
> +		vin-supply = <&vph_pwr>;
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +
> +		gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
> +		enable-active-high;
> +	};
> +
>  	backlight: backlight {
>  		compatible = "pwm-backlight";
>  		pwms = <&sn65dsi86 1000000>;
> @@ -419,6 +438,7 @@ aux-bus {
>  			panel: panel {
>  				compatible = "boe,nv133fhm-n61";
>  				backlight = <&backlight>;
> +				power-supply = <&vlcm_3v3>;
>  
>  				port {
>  					panel_in_edp: endpoint {
  
Konrad Dybcio June 26, 2023, 9:47 a.m. UTC | #4
On 24.06.2023 16:56, Caleb Connolly wrote:
> 
> 
> On 17/06/2023 17:15, Krzysztof Kozlowski wrote:
>> Panel bindings (boe,nv133fhm-n61) require supply which here actually can
>> be turned on/off via GPIO control:
>>
>>   sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> I've been running an equivalent patch for a while, so
> 
> Tested-by: Caleb Connolly <caleb.connolly@linaro.org>
> 
> The dsi bridge vcc and vcca supplies are also missing, they're powered
> from vreg_l2a_1p2 and controlled by pm8998_gpio 9.
Mind submitting an incremental patch?

Konrad
>>
>> ---
>>
>> Not tested on hardware
>> ---
>>  .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 20 +++++++++++++++++++
>>  1 file changed, 20 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
>> index cfbc4fc1eba9..3d871567cf81 100644
>> --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
>> +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
>> @@ -87,6 +87,25 @@ sn65dsi86_refclk: sn65dsi86-refclk {
>>  		clock-frequency = <19200000>;
>>  	};
>>  
>> +	vph_pwr: regulator-vph-pwr {
>> +		compatible = "regulator-fixed";
>> +		regulator-name = "vph_pwr";
>> +		regulator-min-microvolt = <3700000>;
>> +		regulator-max-microvolt = <3700000>;
>> +	};
>> +
>> +	vlcm_3v3: regulator-vlcm-3v3 {
>> +		compatible = "regulator-fixed";
>> +		regulator-name = "vlcm_3v3";
>> +
>> +		vin-supply = <&vph_pwr>;
>> +		regulator-min-microvolt = <3300000>;
>> +		regulator-max-microvolt = <3300000>;
>> +
>> +		gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
>> +		enable-active-high;
>> +	};
>> +
>>  	backlight: backlight {
>>  		compatible = "pwm-backlight";
>>  		pwms = <&sn65dsi86 1000000>;
>> @@ -419,6 +438,7 @@ aux-bus {
>>  			panel: panel {
>>  				compatible = "boe,nv133fhm-n61";
>>  				backlight = <&backlight>;
>> +				power-supply = <&vlcm_3v3>;
>>  
>>  				port {
>>  					panel_in_edp: endpoint {
>
  
Bjorn Andersson July 14, 2023, 5:48 a.m. UTC | #5
On Sat, 17 Jun 2023 19:15:12 +0200, Krzysztof Kozlowski wrote:
> Panel bindings (boe,nv133fhm-n61) require supply which here actually can
> be turned on/off via GPIO control:
> 
>   sdm850-lenovo-yoga-c630.dtb: panel: 'power-supply' is a required property
> 
> 

Applied, thanks!

[1/1] arm64: dts: qcom: sdm850-c630: add missing panel supply
      commit: 6b0fd355e9572f4db52880e63e0bc74a2a3bfd84

Best regards,
  

Patch

diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
index cfbc4fc1eba9..3d871567cf81 100644
--- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
+++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
@@ -87,6 +87,25 @@  sn65dsi86_refclk: sn65dsi86-refclk {
 		clock-frequency = <19200000>;
 	};
 
+	vph_pwr: regulator-vph-pwr {
+		compatible = "regulator-fixed";
+		regulator-name = "vph_pwr";
+		regulator-min-microvolt = <3700000>;
+		regulator-max-microvolt = <3700000>;
+	};
+
+	vlcm_3v3: regulator-vlcm-3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vlcm_3v3";
+
+		vin-supply = <&vph_pwr>;
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&tlmm 88 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
 	backlight: backlight {
 		compatible = "pwm-backlight";
 		pwms = <&sn65dsi86 1000000>;
@@ -419,6 +438,7 @@  aux-bus {
 			panel: panel {
 				compatible = "boe,nv133fhm-n61";
 				backlight = <&backlight>;
+				power-supply = <&vlcm_3v3>;
 
 				port {
 					panel_in_edp: endpoint {