12c44a993SDmitry Baryshkov# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause 22c44a993SDmitry Baryshkov%YAML 1.2 32c44a993SDmitry Baryshkov--- 42c44a993SDmitry Baryshkov$id: http://devicetree.org/schemas/display/msm/qcom,sc7280-mdss.yaml# 52c44a993SDmitry Baryshkov$schema: http://devicetree.org/meta-schemas/core.yaml# 62c44a993SDmitry Baryshkov 72c44a993SDmitry Baryshkovtitle: Qualcomm SC7280 Display MDSS 82c44a993SDmitry Baryshkov 92c44a993SDmitry Baryshkovmaintainers: 102c44a993SDmitry Baryshkov - Krishna Manikandan <quic_mkrishn@quicinc.com> 112c44a993SDmitry Baryshkov 122c44a993SDmitry Baryshkovdescription: 132c44a993SDmitry Baryshkov Device tree bindings for MSM Mobile Display Subsystem (MDSS) that encapsulates 142c44a993SDmitry Baryshkov sub-blocks like DPU display controller, DSI and DP interfaces etc. Device tree 152c44a993SDmitry Baryshkov bindings of MDSS are mentioned for SC7280. 162c44a993SDmitry Baryshkov 172c44a993SDmitry Baryshkov$ref: /schemas/display/msm/mdss-common.yaml# 182c44a993SDmitry Baryshkov 192c44a993SDmitry Baryshkovproperties: 202c44a993SDmitry Baryshkov compatible: 212c44a993SDmitry Baryshkov const: qcom,sc7280-mdss 222c44a993SDmitry Baryshkov 232c44a993SDmitry Baryshkov clocks: 242c44a993SDmitry Baryshkov items: 252c44a993SDmitry Baryshkov - description: Display AHB clock from gcc 262c44a993SDmitry Baryshkov - description: Display AHB clock from dispcc 272c44a993SDmitry Baryshkov - description: Display core clock 282c44a993SDmitry Baryshkov 292c44a993SDmitry Baryshkov clock-names: 302c44a993SDmitry Baryshkov items: 312c44a993SDmitry Baryshkov - const: iface 322c44a993SDmitry Baryshkov - const: ahb 332c44a993SDmitry Baryshkov - const: core 342c44a993SDmitry Baryshkov 352c44a993SDmitry Baryshkov iommus: 362c44a993SDmitry Baryshkov maxItems: 1 372c44a993SDmitry Baryshkov 382c44a993SDmitry Baryshkov interconnects: 392c44a993SDmitry Baryshkov maxItems: 1 402c44a993SDmitry Baryshkov 412c44a993SDmitry Baryshkov interconnect-names: 422c44a993SDmitry Baryshkov maxItems: 1 432c44a993SDmitry Baryshkov 442c44a993SDmitry BaryshkovpatternProperties: 452c44a993SDmitry Baryshkov "^display-controller@[0-9a-f]+$": 462c44a993SDmitry Baryshkov type: object 472c44a993SDmitry Baryshkov properties: 482c44a993SDmitry Baryshkov compatible: 492c44a993SDmitry Baryshkov const: qcom,sc7280-dpu 502c44a993SDmitry Baryshkov 51*4b32e466SDmitry Baryshkov "^displayport-controller@[0-9a-f]+$": 52*4b32e466SDmitry Baryshkov type: object 53*4b32e466SDmitry Baryshkov properties: 54*4b32e466SDmitry Baryshkov compatible: 55*4b32e466SDmitry Baryshkov const: qcom,sc7280-dp 56*4b32e466SDmitry Baryshkov 57*4b32e466SDmitry Baryshkov "^dsi@[0-9a-f]+$": 58*4b32e466SDmitry Baryshkov type: object 59*4b32e466SDmitry Baryshkov properties: 60*4b32e466SDmitry Baryshkov compatible: 61*4b32e466SDmitry Baryshkov const: qcom,mdss-dsi-ctrl 62*4b32e466SDmitry Baryshkov 63*4b32e466SDmitry Baryshkov "^edp@[0-9a-f]+$": 64*4b32e466SDmitry Baryshkov type: object 65*4b32e466SDmitry Baryshkov properties: 66*4b32e466SDmitry Baryshkov compatible: 67*4b32e466SDmitry Baryshkov const: qcom,sc7280-edp 68*4b32e466SDmitry Baryshkov 69*4b32e466SDmitry Baryshkov "^phy@[0-9a-f]+$": 70*4b32e466SDmitry Baryshkov type: object 71*4b32e466SDmitry Baryshkov properties: 72*4b32e466SDmitry Baryshkov compatible: 73*4b32e466SDmitry Baryshkov enum: 74*4b32e466SDmitry Baryshkov - qcom,sc7280-dsi-phy-7nm 75*4b32e466SDmitry Baryshkov - qcom,sc7280-edp-phy 76*4b32e466SDmitry Baryshkov 772c44a993SDmitry BaryshkovunevaluatedProperties: false 782c44a993SDmitry Baryshkov 792c44a993SDmitry Baryshkovexamples: 802c44a993SDmitry Baryshkov - | 812c44a993SDmitry Baryshkov #include <dt-bindings/clock/qcom,dispcc-sc7280.h> 822c44a993SDmitry Baryshkov #include <dt-bindings/clock/qcom,gcc-sc7280.h> 83*4b32e466SDmitry Baryshkov #include <dt-bindings/clock/qcom,rpmh.h> 842c44a993SDmitry Baryshkov #include <dt-bindings/interrupt-controller/arm-gic.h> 852c44a993SDmitry Baryshkov #include <dt-bindings/interconnect/qcom,sc7280.h> 862c44a993SDmitry Baryshkov #include <dt-bindings/power/qcom-rpmpd.h> 872c44a993SDmitry Baryshkov 882c44a993SDmitry Baryshkov display-subsystem@ae00000 { 892c44a993SDmitry Baryshkov #address-cells = <1>; 902c44a993SDmitry Baryshkov #size-cells = <1>; 912c44a993SDmitry Baryshkov compatible = "qcom,sc7280-mdss"; 922c44a993SDmitry Baryshkov reg = <0xae00000 0x1000>; 932c44a993SDmitry Baryshkov reg-names = "mdss"; 942c44a993SDmitry Baryshkov power-domains = <&dispcc DISP_CC_MDSS_CORE_GDSC>; 952c44a993SDmitry Baryshkov clocks = <&gcc GCC_DISP_AHB_CLK>, 962c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_AHB_CLK>, 972c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_MDP_CLK>; 982c44a993SDmitry Baryshkov clock-names = "iface", 992c44a993SDmitry Baryshkov "ahb", 1002c44a993SDmitry Baryshkov "core"; 1012c44a993SDmitry Baryshkov 1022c44a993SDmitry Baryshkov interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 1032c44a993SDmitry Baryshkov interrupt-controller; 1042c44a993SDmitry Baryshkov #interrupt-cells = <1>; 1052c44a993SDmitry Baryshkov 1062c44a993SDmitry Baryshkov interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>; 1072c44a993SDmitry Baryshkov interconnect-names = "mdp0-mem"; 1082c44a993SDmitry Baryshkov 1092c44a993SDmitry Baryshkov iommus = <&apps_smmu 0x900 0x402>; 1102c44a993SDmitry Baryshkov ranges; 1112c44a993SDmitry Baryshkov 1122c44a993SDmitry Baryshkov display-controller@ae01000 { 1132c44a993SDmitry Baryshkov compatible = "qcom,sc7280-dpu"; 1142c44a993SDmitry Baryshkov reg = <0x0ae01000 0x8f000>, 1152c44a993SDmitry Baryshkov <0x0aeb0000 0x2008>; 1162c44a993SDmitry Baryshkov 1172c44a993SDmitry Baryshkov reg-names = "mdp", "vbif"; 1182c44a993SDmitry Baryshkov 1192c44a993SDmitry Baryshkov clocks = <&gcc GCC_DISP_HF_AXI_CLK>, 1202c44a993SDmitry Baryshkov <&gcc GCC_DISP_SF_AXI_CLK>, 1212c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_AHB_CLK>, 1222c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>, 1232c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_MDP_CLK>, 1242c44a993SDmitry Baryshkov <&dispcc DISP_CC_MDSS_VSYNC_CLK>; 1252c44a993SDmitry Baryshkov clock-names = "bus", 1262c44a993SDmitry Baryshkov "nrt_bus", 1272c44a993SDmitry Baryshkov "iface", 1282c44a993SDmitry Baryshkov "lut", 1292c44a993SDmitry Baryshkov "core", 1302c44a993SDmitry Baryshkov "vsync"; 1312c44a993SDmitry Baryshkov 1322c44a993SDmitry Baryshkov interrupt-parent = <&mdss>; 1332c44a993SDmitry Baryshkov interrupts = <0>; 1342c44a993SDmitry Baryshkov power-domains = <&rpmhpd SC7280_CX>; 1352c44a993SDmitry Baryshkov operating-points-v2 = <&mdp_opp_table>; 1362c44a993SDmitry Baryshkov 1372c44a993SDmitry Baryshkov ports { 1382c44a993SDmitry Baryshkov #address-cells = <1>; 1392c44a993SDmitry Baryshkov #size-cells = <0>; 1402c44a993SDmitry Baryshkov 1412c44a993SDmitry Baryshkov port@0 { 1422c44a993SDmitry Baryshkov reg = <0>; 1432c44a993SDmitry Baryshkov dpu_intf1_out: endpoint { 1442c44a993SDmitry Baryshkov remote-endpoint = <&dsi0_in>; 1452c44a993SDmitry Baryshkov }; 1462c44a993SDmitry Baryshkov }; 1472c44a993SDmitry Baryshkov 1482c44a993SDmitry Baryshkov port@1 { 1492c44a993SDmitry Baryshkov reg = <1>; 1502c44a993SDmitry Baryshkov dpu_intf5_out: endpoint { 1512c44a993SDmitry Baryshkov remote-endpoint = <&edp_in>; 1522c44a993SDmitry Baryshkov }; 1532c44a993SDmitry Baryshkov }; 154*4b32e466SDmitry Baryshkov 155*4b32e466SDmitry Baryshkov port@2 { 156*4b32e466SDmitry Baryshkov reg = <2>; 157*4b32e466SDmitry Baryshkov dpu_intf0_out: endpoint { 158*4b32e466SDmitry Baryshkov remote-endpoint = <&dp_in>; 159*4b32e466SDmitry Baryshkov }; 160*4b32e466SDmitry Baryshkov }; 161*4b32e466SDmitry Baryshkov }; 162*4b32e466SDmitry Baryshkov }; 163*4b32e466SDmitry Baryshkov 164*4b32e466SDmitry Baryshkov dsi@ae94000 { 165*4b32e466SDmitry Baryshkov compatible = "qcom,mdss-dsi-ctrl"; 166*4b32e466SDmitry Baryshkov reg = <0x0ae94000 0x400>; 167*4b32e466SDmitry Baryshkov reg-names = "dsi_ctrl"; 168*4b32e466SDmitry Baryshkov 169*4b32e466SDmitry Baryshkov interrupt-parent = <&mdss>; 170*4b32e466SDmitry Baryshkov interrupts = <4>; 171*4b32e466SDmitry Baryshkov 172*4b32e466SDmitry Baryshkov clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>, 173*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>, 174*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_PCLK0_CLK>, 175*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_ESC0_CLK>, 176*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_AHB_CLK>, 177*4b32e466SDmitry Baryshkov <&gcc GCC_DISP_HF_AXI_CLK>; 178*4b32e466SDmitry Baryshkov clock-names = "byte", 179*4b32e466SDmitry Baryshkov "byte_intf", 180*4b32e466SDmitry Baryshkov "pixel", 181*4b32e466SDmitry Baryshkov "core", 182*4b32e466SDmitry Baryshkov "iface", 183*4b32e466SDmitry Baryshkov "bus"; 184*4b32e466SDmitry Baryshkov 185*4b32e466SDmitry Baryshkov assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, 186*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>; 187*4b32e466SDmitry Baryshkov assigned-clock-parents = <&mdss_dsi_phy 0>, <&mdss_dsi_phy 1>; 188*4b32e466SDmitry Baryshkov 189*4b32e466SDmitry Baryshkov operating-points-v2 = <&dsi_opp_table>; 190*4b32e466SDmitry Baryshkov power-domains = <&rpmhpd SC7280_CX>; 191*4b32e466SDmitry Baryshkov 192*4b32e466SDmitry Baryshkov phys = <&mdss_dsi_phy>; 193*4b32e466SDmitry Baryshkov phy-names = "dsi"; 194*4b32e466SDmitry Baryshkov 195*4b32e466SDmitry Baryshkov #address-cells = <1>; 196*4b32e466SDmitry Baryshkov #size-cells = <0>; 197*4b32e466SDmitry Baryshkov 198*4b32e466SDmitry Baryshkov ports { 199*4b32e466SDmitry Baryshkov #address-cells = <1>; 200*4b32e466SDmitry Baryshkov #size-cells = <0>; 201*4b32e466SDmitry Baryshkov 202*4b32e466SDmitry Baryshkov port@0 { 203*4b32e466SDmitry Baryshkov reg = <0>; 204*4b32e466SDmitry Baryshkov dsi0_in: endpoint { 205*4b32e466SDmitry Baryshkov remote-endpoint = <&dpu_intf1_out>; 206*4b32e466SDmitry Baryshkov }; 207*4b32e466SDmitry Baryshkov }; 208*4b32e466SDmitry Baryshkov 209*4b32e466SDmitry Baryshkov port@1 { 210*4b32e466SDmitry Baryshkov reg = <1>; 211*4b32e466SDmitry Baryshkov dsi0_out: endpoint { 212*4b32e466SDmitry Baryshkov }; 213*4b32e466SDmitry Baryshkov }; 214*4b32e466SDmitry Baryshkov }; 215*4b32e466SDmitry Baryshkov 216*4b32e466SDmitry Baryshkov dsi_opp_table: opp-table { 217*4b32e466SDmitry Baryshkov compatible = "operating-points-v2"; 218*4b32e466SDmitry Baryshkov 219*4b32e466SDmitry Baryshkov opp-187500000 { 220*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <187500000>; 221*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 222*4b32e466SDmitry Baryshkov }; 223*4b32e466SDmitry Baryshkov 224*4b32e466SDmitry Baryshkov opp-300000000 { 225*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <300000000>; 226*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_svs>; 227*4b32e466SDmitry Baryshkov }; 228*4b32e466SDmitry Baryshkov 229*4b32e466SDmitry Baryshkov opp-358000000 { 230*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <358000000>; 231*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_svs_l1>; 232*4b32e466SDmitry Baryshkov }; 233*4b32e466SDmitry Baryshkov }; 234*4b32e466SDmitry Baryshkov }; 235*4b32e466SDmitry Baryshkov 236*4b32e466SDmitry Baryshkov mdss_dsi_phy: phy@ae94400 { 237*4b32e466SDmitry Baryshkov compatible = "qcom,sc7280-dsi-phy-7nm"; 238*4b32e466SDmitry Baryshkov reg = <0x0ae94400 0x200>, 239*4b32e466SDmitry Baryshkov <0x0ae94600 0x280>, 240*4b32e466SDmitry Baryshkov <0x0ae94900 0x280>; 241*4b32e466SDmitry Baryshkov reg-names = "dsi_phy", 242*4b32e466SDmitry Baryshkov "dsi_phy_lane", 243*4b32e466SDmitry Baryshkov "dsi_pll"; 244*4b32e466SDmitry Baryshkov 245*4b32e466SDmitry Baryshkov #clock-cells = <1>; 246*4b32e466SDmitry Baryshkov #phy-cells = <0>; 247*4b32e466SDmitry Baryshkov 248*4b32e466SDmitry Baryshkov clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 249*4b32e466SDmitry Baryshkov <&rpmhcc RPMH_CXO_CLK>; 250*4b32e466SDmitry Baryshkov clock-names = "iface", "ref"; 251*4b32e466SDmitry Baryshkov 252*4b32e466SDmitry Baryshkov vdds-supply = <&vreg_dsi_supply>; 253*4b32e466SDmitry Baryshkov }; 254*4b32e466SDmitry Baryshkov 255*4b32e466SDmitry Baryshkov edp@aea0000 { 256*4b32e466SDmitry Baryshkov compatible = "qcom,sc7280-edp"; 257*4b32e466SDmitry Baryshkov pinctrl-names = "default"; 258*4b32e466SDmitry Baryshkov pinctrl-0 = <&edp_hot_plug_det>; 259*4b32e466SDmitry Baryshkov 260*4b32e466SDmitry Baryshkov reg = <0xaea0000 0x200>, 261*4b32e466SDmitry Baryshkov <0xaea0200 0x200>, 262*4b32e466SDmitry Baryshkov <0xaea0400 0xc00>, 263*4b32e466SDmitry Baryshkov <0xaea1000 0x400>; 264*4b32e466SDmitry Baryshkov 265*4b32e466SDmitry Baryshkov interrupt-parent = <&mdss>; 266*4b32e466SDmitry Baryshkov interrupts = <14>; 267*4b32e466SDmitry Baryshkov 268*4b32e466SDmitry Baryshkov clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 269*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_EDP_AUX_CLK>, 270*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_EDP_LINK_CLK>, 271*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_EDP_LINK_INTF_CLK>, 272*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK>; 273*4b32e466SDmitry Baryshkov clock-names = "core_iface", 274*4b32e466SDmitry Baryshkov "core_aux", 275*4b32e466SDmitry Baryshkov "ctrl_link", 276*4b32e466SDmitry Baryshkov "ctrl_link_iface", 277*4b32e466SDmitry Baryshkov "stream_pixel"; 278*4b32e466SDmitry Baryshkov assigned-clocks = <&dispcc DISP_CC_MDSS_EDP_LINK_CLK_SRC>, 279*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK_SRC>; 280*4b32e466SDmitry Baryshkov assigned-clock-parents = <&mdss_edp_phy 0>, <&mdss_edp_phy 1>; 281*4b32e466SDmitry Baryshkov 282*4b32e466SDmitry Baryshkov phys = <&mdss_edp_phy>; 283*4b32e466SDmitry Baryshkov phy-names = "dp"; 284*4b32e466SDmitry Baryshkov 285*4b32e466SDmitry Baryshkov operating-points-v2 = <&edp_opp_table>; 286*4b32e466SDmitry Baryshkov power-domains = <&rpmhpd SC7280_CX>; 287*4b32e466SDmitry Baryshkov 288*4b32e466SDmitry Baryshkov ports { 289*4b32e466SDmitry Baryshkov #address-cells = <1>; 290*4b32e466SDmitry Baryshkov #size-cells = <0>; 291*4b32e466SDmitry Baryshkov 292*4b32e466SDmitry Baryshkov port@0 { 293*4b32e466SDmitry Baryshkov reg = <0>; 294*4b32e466SDmitry Baryshkov edp_in: endpoint { 295*4b32e466SDmitry Baryshkov remote-endpoint = <&dpu_intf5_out>; 296*4b32e466SDmitry Baryshkov }; 297*4b32e466SDmitry Baryshkov }; 298*4b32e466SDmitry Baryshkov 299*4b32e466SDmitry Baryshkov port@1 { 300*4b32e466SDmitry Baryshkov reg = <1>; 301*4b32e466SDmitry Baryshkov mdss_edp_out: endpoint { }; 302*4b32e466SDmitry Baryshkov }; 303*4b32e466SDmitry Baryshkov }; 304*4b32e466SDmitry Baryshkov 305*4b32e466SDmitry Baryshkov edp_opp_table: opp-table { 306*4b32e466SDmitry Baryshkov compatible = "operating-points-v2"; 307*4b32e466SDmitry Baryshkov 308*4b32e466SDmitry Baryshkov opp-160000000 { 309*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <160000000>; 310*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 311*4b32e466SDmitry Baryshkov }; 312*4b32e466SDmitry Baryshkov 313*4b32e466SDmitry Baryshkov opp-270000000 { 314*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <270000000>; 315*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_svs>; 316*4b32e466SDmitry Baryshkov }; 317*4b32e466SDmitry Baryshkov 318*4b32e466SDmitry Baryshkov opp-540000000 { 319*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <540000000>; 320*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_nom>; 321*4b32e466SDmitry Baryshkov }; 322*4b32e466SDmitry Baryshkov 323*4b32e466SDmitry Baryshkov opp-810000000 { 324*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <810000000>; 325*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_nom>; 326*4b32e466SDmitry Baryshkov }; 327*4b32e466SDmitry Baryshkov }; 328*4b32e466SDmitry Baryshkov }; 329*4b32e466SDmitry Baryshkov 330*4b32e466SDmitry Baryshkov mdss_edp_phy: phy@aec2a00 { 331*4b32e466SDmitry Baryshkov compatible = "qcom,sc7280-edp-phy"; 332*4b32e466SDmitry Baryshkov 333*4b32e466SDmitry Baryshkov reg = <0xaec2a00 0x19c>, 334*4b32e466SDmitry Baryshkov <0xaec2200 0xa0>, 335*4b32e466SDmitry Baryshkov <0xaec2600 0xa0>, 336*4b32e466SDmitry Baryshkov <0xaec2000 0x1c0>; 337*4b32e466SDmitry Baryshkov 338*4b32e466SDmitry Baryshkov clocks = <&rpmhcc RPMH_CXO_CLK>, 339*4b32e466SDmitry Baryshkov <&gcc GCC_EDP_CLKREF_EN>; 340*4b32e466SDmitry Baryshkov clock-names = "aux", 341*4b32e466SDmitry Baryshkov "cfg_ahb"; 342*4b32e466SDmitry Baryshkov 343*4b32e466SDmitry Baryshkov #clock-cells = <1>; 344*4b32e466SDmitry Baryshkov #phy-cells = <0>; 345*4b32e466SDmitry Baryshkov }; 346*4b32e466SDmitry Baryshkov 347*4b32e466SDmitry Baryshkov displayport-controller@ae90000 { 348*4b32e466SDmitry Baryshkov compatible = "qcom,sc7280-dp"; 349*4b32e466SDmitry Baryshkov 350*4b32e466SDmitry Baryshkov reg = <0xae90000 0x200>, 351*4b32e466SDmitry Baryshkov <0xae90200 0x200>, 352*4b32e466SDmitry Baryshkov <0xae90400 0xc00>, 353*4b32e466SDmitry Baryshkov <0xae91000 0x400>, 354*4b32e466SDmitry Baryshkov <0xae91400 0x400>; 355*4b32e466SDmitry Baryshkov 356*4b32e466SDmitry Baryshkov interrupt-parent = <&mdss>; 357*4b32e466SDmitry Baryshkov interrupts = <12>; 358*4b32e466SDmitry Baryshkov 359*4b32e466SDmitry Baryshkov clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 360*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_DP_AUX_CLK>, 361*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_DP_LINK_CLK>, 362*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>, 363*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>; 364*4b32e466SDmitry Baryshkov clock-names = "core_iface", 365*4b32e466SDmitry Baryshkov "core_aux", 366*4b32e466SDmitry Baryshkov "ctrl_link", 367*4b32e466SDmitry Baryshkov "ctrl_link_iface", 368*4b32e466SDmitry Baryshkov "stream_pixel"; 369*4b32e466SDmitry Baryshkov assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>, 370*4b32e466SDmitry Baryshkov <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>; 371*4b32e466SDmitry Baryshkov assigned-clock-parents = <&dp_phy 0>, <&dp_phy 1>; 372*4b32e466SDmitry Baryshkov phys = <&dp_phy>; 373*4b32e466SDmitry Baryshkov phy-names = "dp"; 374*4b32e466SDmitry Baryshkov 375*4b32e466SDmitry Baryshkov operating-points-v2 = <&dp_opp_table>; 376*4b32e466SDmitry Baryshkov power-domains = <&rpmhpd SC7280_CX>; 377*4b32e466SDmitry Baryshkov 378*4b32e466SDmitry Baryshkov #sound-dai-cells = <0>; 379*4b32e466SDmitry Baryshkov 380*4b32e466SDmitry Baryshkov ports { 381*4b32e466SDmitry Baryshkov #address-cells = <1>; 382*4b32e466SDmitry Baryshkov #size-cells = <0>; 383*4b32e466SDmitry Baryshkov 384*4b32e466SDmitry Baryshkov port@0 { 385*4b32e466SDmitry Baryshkov reg = <0>; 386*4b32e466SDmitry Baryshkov dp_in: endpoint { 387*4b32e466SDmitry Baryshkov remote-endpoint = <&dpu_intf0_out>; 388*4b32e466SDmitry Baryshkov }; 389*4b32e466SDmitry Baryshkov }; 390*4b32e466SDmitry Baryshkov 391*4b32e466SDmitry Baryshkov port@1 { 392*4b32e466SDmitry Baryshkov reg = <1>; 393*4b32e466SDmitry Baryshkov dp_out: endpoint { }; 394*4b32e466SDmitry Baryshkov }; 395*4b32e466SDmitry Baryshkov }; 396*4b32e466SDmitry Baryshkov 397*4b32e466SDmitry Baryshkov dp_opp_table: opp-table { 398*4b32e466SDmitry Baryshkov compatible = "operating-points-v2"; 399*4b32e466SDmitry Baryshkov 400*4b32e466SDmitry Baryshkov opp-160000000 { 401*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <160000000>; 402*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_low_svs>; 403*4b32e466SDmitry Baryshkov }; 404*4b32e466SDmitry Baryshkov 405*4b32e466SDmitry Baryshkov opp-270000000 { 406*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <270000000>; 407*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_svs>; 408*4b32e466SDmitry Baryshkov }; 409*4b32e466SDmitry Baryshkov 410*4b32e466SDmitry Baryshkov opp-540000000 { 411*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <540000000>; 412*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_svs_l1>; 413*4b32e466SDmitry Baryshkov }; 414*4b32e466SDmitry Baryshkov 415*4b32e466SDmitry Baryshkov opp-810000000 { 416*4b32e466SDmitry Baryshkov opp-hz = /bits/ 64 <810000000>; 417*4b32e466SDmitry Baryshkov required-opps = <&rpmhpd_opp_nom>; 418*4b32e466SDmitry Baryshkov }; 4192c44a993SDmitry Baryshkov }; 4202c44a993SDmitry Baryshkov }; 4212c44a993SDmitry Baryshkov }; 4222c44a993SDmitry Baryshkov... 423