Add HDMI and HDMI PHY device nodes for the Qualcomm MSM8974 SoC.

Signed-off-by: Dmitry Baryshkov <[email protected]>
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 90 ++++++++++++++++++++++++++++-
 1 file changed, 89 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
index fb661c1bd3d5..fbe74eeef863 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1805,6 +1805,21 @@ cci_i2c1_sleep: cci-i2c1-sleep-pins {
                                };
                        };
 
+                       hdmi_default: hdmi-default-state {
+                               cec-pins {
+                                       pins = "gpio31";
+                                       function = "hdmi_cec";
+                               };
+                               ddc-pins {
+                                       pins = "gpio32", "gpio33";
+                                       function = "hdmi_ddc";
+                               };
+                               hpd-pins {
+                                       pins = "gpio34";
+                                       function = "hdmi_hpd";
+                               };
+                       };
+
                        spi8_default: spi8_default-state {
                                mosi-pins {
                                        pins = "gpio45";
@@ -1840,7 +1855,7 @@ mmcc: clock-controller@fd8c0000 {
                                 <&dsi0_phy 0>,
                                 <&dsi1_phy 1>,
                                 <&dsi1_phy 0>,
-                                <0>,
+                                <&mdss_hdmi_phy>,
                                 <0>,
                                 <0>;
                        clock-names = "xo",
@@ -1914,6 +1929,13 @@ mdp5_intf2_out: endpoint {
                                                        remote-endpoint = 
<&dsi1_in>;
                                                };
                                        };
+
+                                       port@2 {
+                                               reg = <2>;
+                                               mdp5_intf3_out: endpoint {
+                                                       remote-endpoint = 
<&mdss_hdmi_in>;
+                                               };
+                                       };
                                };
                        };
 
@@ -1970,6 +1992,72 @@ dsi0_out: endpoint {
                                };
                        };
 
+                       mdss_hdmi: hdmi-tx@fd922100 {
+                               compatible = "qcom,hdmi-tx-8974";
+                               reg = <0xfd922100 0x35c>,
+                                     <0xfc4b8000 0x60f0>;
+                               reg-names = "core_physical",
+                                           "qfprom_physical";
+
+                               pinctrl-0 = <&hdmi_default>;
+                               pinctrl-names = "default";
+
+                               interrupt-parent = <&mdss>;
+                               interrupts = <8>;
+
+                               clocks = <&mmcc MDSS_MDP_CLK>,
+                                        <&mmcc MDSS_AHB_CLK>,
+                                        <&mmcc MDSS_HDMI_CLK>,
+                                        <&mmcc MDSS_HDMI_AHB_CLK>,
+                                        <&mmcc MDSS_EXTPCLK_CLK>;
+                               clock-names =
+                                       "mdp_core",
+                                       "iface",
+                                       "core",
+                                       "alt_iface",
+                                       "extp";
+
+                               phys = <&mdss_hdmi_phy>;
+
+                               status = "disabled";
+
+                               ports {
+                                       #address-cells = <1>;
+                                       #size-cells = <0>;
+
+                                       port@0 {
+                                               reg = <0>;
+                                               mdss_hdmi_in: endpoint {
+                                                       remote-endpoint = 
<&mdp5_intf3_out>;
+                                               };
+                                       };
+
+                                       port@1 {
+                                               reg = <1>;
+                                               mdss_hdmi_out: endpoint {
+                                               };
+                                       };
+                               };
+                       };
+
+                       mdss_hdmi_phy: hdmi-phy@fd922500 {
+                               compatible = "qcom,hdmi-phy-8974";
+                               reg = <0xfd922500 0x7c>,
+                                     <0xfd922700 0xd4>;
+                               reg-names = "hdmi_phy",
+                                           "hdmi_pll";
+
+                               clocks = <&mmcc MDSS_AHB_CLK>,
+                                        <&mmcc MDSS_HDMI_AHB_CLK>;
+                               clock-names = "iface",
+                                             "alt_iface";
+
+                               #phy-cells = <0>;
+                               #clock-cells = <0>;
+
+                               status = "disabled";
+                       };
+
                        dsi0_phy: phy@fd922a00 {
                                compatible = "qcom,dsi-phy-28nm-hpm";
                                reg = <0xfd922a00 0xd4>,
-- 
2.39.2

Reply via email to