Message ID | 20200514170129.10902-1-michael.srba@seznam.cz |
---|---|
State | New |
Headers | show |
Series | arm64: dts: qcom: msm8916-samsung-a3u: add nodes for display panel | expand |
On Thu 14 May 10:01 PDT 2020, michael.srba@seznam.cz wrote: > From: Michael Srba <michael.srba@seznam.cz> > > This patch wires up display support on Samsung Galaxy A3 2015. > > Signed-off-by: Michael Srba <michael.srba@seznam.cz> > > --- > .../qcom/msm8916-samsung-a2015-common.dtsi | 44 +++++++++++++++ > .../boot/dts/qcom/msm8916-samsung-a3u-eur.dts | 54 +++++++++++++++++++ > 2 files changed, 98 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi > index af812f76e8be..2a64aa269f52 100644 > --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi > @@ -72,6 +72,24 @@ phy { > }; > }; > > + mdss@1a00000 { > + dsi@1a98000 { > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdda-supply = <&pm8916_l2>; > + vddio-supply = <&pm8916_l6>; > + > + pinctrl-names = "default", "sleep"; > + pinctrl-0 = <&mdss_default>; > + pinctrl-1 = <&mdss_sleep>; > + }; > + > + dsi-phy@1a98300 { > + vddio-supply = <&pm8916_l6>; > + }; > + }; > + > wcnss@a21b000 { > status = "okay"; > }; > @@ -172,6 +190,32 @@ pinconf { > bias-disable; > }; > }; > + > + pmx-mdss { > + mdss_default: mdss-default { > + pinmux { > + function = "gpio"; > + pins = "gpio25"; > + }; > + pinconf { > + pins = "gpio25"; > + drive-strength = <8>; > + bias-disable; > + }; > + }; Fyi, when you have a state with a single set of properties you don't need the pinmux/pinconf level here, you can directly do: mdss_default: mdss-default { pins = "gpio25"; function = "gpio"; drive-strength = <8>; bias-disable; }; But this looks good, applied towards v5.8. Regards, Bjorn
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi index af812f76e8be..2a64aa269f52 100644 --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi @@ -72,6 +72,24 @@ phy { }; }; + mdss@1a00000 { + dsi@1a98000 { + #address-cells = <1>; + #size-cells = <0>; + + vdda-supply = <&pm8916_l2>; + vddio-supply = <&pm8916_l6>; + + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&mdss_default>; + pinctrl-1 = <&mdss_sleep>; + }; + + dsi-phy@1a98300 { + vddio-supply = <&pm8916_l6>; + }; + }; + wcnss@a21b000 { status = "okay"; }; @@ -172,6 +190,32 @@ pinconf { bias-disable; }; }; + + pmx-mdss { + mdss_default: mdss-default { + pinmux { + function = "gpio"; + pins = "gpio25"; + }; + pinconf { + pins = "gpio25"; + drive-strength = <8>; + bias-disable; + }; + }; + + mdss_sleep: mdss-sleep { + pinmux { + function = "gpio"; + pins = "gpio25"; + }; + pinconf { + pins = "gpio25"; + drive-strength = <2>; + bias-pull-down; + }; + }; + }; }; &smd_rpm_regulators { diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts index d10f7ac5089f..b46c87289033 100644 --- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts +++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts @@ -7,4 +7,58 @@ / { model = "Samsung Galaxy A3U (EUR)"; compatible = "samsung,a3u-eur", "qcom,msm8916"; + + reg_panel_vdd3: regulator-panel-vdd3 { + compatible = "regulator-fixed"; + regulator-name = "panel_vdd3"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + + gpio = <&msmgpio 9 GPIO_ACTIVE_HIGH>; + enable-active-high; + + pinctrl-names = "default"; + pinctrl-0 = <&panel_vdd3_default>; + }; +}; + +&dsi0 { + panel@0 { + reg = <0>; + + compatible = "samsung,s6e88a0-ams452ef01"; + + vdd3-supply = <®_panel_vdd3>; + vci-supply = <&pm8916_l17>; + reset-gpios = <&msmgpio 25 GPIO_ACTIVE_HIGH>; + + port { + panel_in: endpoint { + remote-endpoint = <&dsi0_out>; + }; + }; + }; + + ports { + port@1 { + dsi0_out: endpoint { + remote-endpoint = <&panel_in>; + data-lanes = <0 1>; + }; + }; + }; +}; + +&msmgpio { + panel_vdd3_default: panel-vdd3-default { + pinmux { + function = "gpio"; + pins = "gpio9"; + }; + pinconf { + pins = "gpio9"; + drive-strength = <2>; + bias-disable; + }; + }; };