]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: qcom: sdm450-lenovo-tbx605f: add DSI panel nodes
authorNeil Armstrong <neil.armstrong@linaro.org>
Fri, 15 Nov 2024 10:20:54 +0000 (11:20 +0100)
committerBjorn Andersson <andersson@kernel.org>
Wed, 8 Jan 2025 22:41:34 +0000 (16:41 -0600)
Add the necessary nodes to enable the DSI panel on the
Lenovo Smart Tab M10 tablet.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20241115-topic-sdm450-upstream-lab-ibb-v1-2-8a8e74befbfe@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sdm450-lenovo-tbx605f.dts

index c509bbfe5d3e88e82bb783693f7f625d91c16f77..735a21df8cc9257f329c058227b1afb99ed62e17 100644 (file)
                };
        };
 
+       backlight: gpio-backlight {
+               compatible = "gpio-backlight";
+
+               gpios = <&tlmm 16 GPIO_ACTIVE_HIGH>;
+
+               default-on;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&backlight_enable_active>;
+               pinctrl-1 = <&backlight_enable_sleep>;
+       };
+
        gpio-keys {
                compatible = "gpio-keys";
                key-volume-up {
        };
 };
 
+&mdss {
+       status = "okay";
+};
+
+&mdss_dsi0 {
+       vdda-supply = <&pm8953_s3>;
+       vddio-supply = <&pm8953_l6>;
+
+       status = "okay";
+
+       panel@0 {
+               compatible = "boe,tv101wum-ll2";
+               reg = <0>;
+
+               vsp-supply = <&lab>;
+               vsn-supply = <&ibb>;
+               reset-gpios = <&tlmm 61 GPIO_ACTIVE_LOW>;
+
+               backlight = <&backlight>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&panel_reset_active>;
+               pinctrl-1 = <&panel_reset_sleep>;
+
+               port {
+                       panel_in: endpoint {
+                               remote-endpoint = <&mdss_dsi0_out>;
+                       };
+               };
+       };
+};
+
+&mdss_dsi0_out {
+       remote-endpoint = <&panel_in>;
+       data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+       vcca-supply = <&pm8953_l3>;
+
+       status = "okay";
+};
+
 &hsusb_phy {
        vdd-supply = <&pm8953_l3>;
        vdda-pll-supply = <&pm8953_l7>;
        };
 };
 
+&ibb {
+       regulator-min-microvolt = <4600000>;
+       regulator-max-microvolt = <6000000>;
+       qcom,discharge-resistor-kohms = <32>;
+};
+
+&lab {
+       regulator-min-microvolt = <4600000>;
+       regulator-max-microvolt = <6000000>;
+       qcom,soft-start-us = <800>;
+};
+
 &pm8953_resin {
        linux,code = <KEY_VOLUMEDOWN>;
        status = "okay";
 &tlmm {
        gpio-reserved-ranges = <0 4>, <135 4>;
 
+       backlight_enable_active: backlight-enable-active-state {
+               pins = "gpio16";
+               function = "gpio";
+               drive-strength = <8>;
+               bias-disable;
+               output-high;
+       };
+
+       backlight_enable_sleep: backlight-enable-sleep-state {
+               pins = "gpio16";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-pull-down;
+       };
+
+       panel_reset_active: panel-reset-active-state {
+               pins = "gpio61";
+               function = "gpio";
+               drive-strength = <8>;
+               bias-disable;
+               output-high;
+       };
+
+       panel_reset_sleep: panel-reset-sleep-state {
+               pins = "gpio61";
+               function = "gpio";
+               drive-strength = <2>;
+               bias-pull-down;
+       };
+
        ts_int_active: ts-int-active-state {
                pins = "gpio65";
                function = "gpio";