xref: /openbmc/linux/Documentation/devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1*440b075bSKrzysztof Kozlowski# 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
514b32e466SDmitry Baryshkov  "^displayport-controller@[0-9a-f]+$":
524b32e466SDmitry Baryshkov    type: object
534b32e466SDmitry Baryshkov    properties:
544b32e466SDmitry Baryshkov      compatible:
554b32e466SDmitry Baryshkov        const: qcom,sc7280-dp
564b32e466SDmitry Baryshkov
574b32e466SDmitry Baryshkov  "^dsi@[0-9a-f]+$":
584b32e466SDmitry Baryshkov    type: object
594b32e466SDmitry Baryshkov    properties:
604b32e466SDmitry Baryshkov      compatible:
610c0f65c6SBryan O'Donoghue        items:
620c0f65c6SBryan O'Donoghue          - const: qcom,sc7280-dsi-ctrl
630c0f65c6SBryan O'Donoghue          - const: qcom,mdss-dsi-ctrl
644b32e466SDmitry Baryshkov
654b32e466SDmitry Baryshkov  "^edp@[0-9a-f]+$":
664b32e466SDmitry Baryshkov    type: object
674b32e466SDmitry Baryshkov    properties:
684b32e466SDmitry Baryshkov      compatible:
694b32e466SDmitry Baryshkov        const: qcom,sc7280-edp
704b32e466SDmitry Baryshkov
714b32e466SDmitry Baryshkov  "^phy@[0-9a-f]+$":
724b32e466SDmitry Baryshkov    type: object
734b32e466SDmitry Baryshkov    properties:
744b32e466SDmitry Baryshkov      compatible:
754b32e466SDmitry Baryshkov        enum:
764b32e466SDmitry Baryshkov          - qcom,sc7280-dsi-phy-7nm
774b32e466SDmitry Baryshkov          - qcom,sc7280-edp-phy
784b32e466SDmitry Baryshkov
79e96150a6SDmitry Baryshkovrequired:
80e96150a6SDmitry Baryshkov  - compatible
81e96150a6SDmitry Baryshkov
822c44a993SDmitry BaryshkovunevaluatedProperties: false
832c44a993SDmitry Baryshkov
842c44a993SDmitry Baryshkovexamples:
852c44a993SDmitry Baryshkov  - |
862c44a993SDmitry Baryshkov    #include <dt-bindings/clock/qcom,dispcc-sc7280.h>
872c44a993SDmitry Baryshkov    #include <dt-bindings/clock/qcom,gcc-sc7280.h>
884b32e466SDmitry Baryshkov    #include <dt-bindings/clock/qcom,rpmh.h>
892c44a993SDmitry Baryshkov    #include <dt-bindings/interrupt-controller/arm-gic.h>
902c44a993SDmitry Baryshkov    #include <dt-bindings/interconnect/qcom,sc7280.h>
912c44a993SDmitry Baryshkov    #include <dt-bindings/power/qcom-rpmpd.h>
922c44a993SDmitry Baryshkov
932c44a993SDmitry Baryshkov    display-subsystem@ae00000 {
942c44a993SDmitry Baryshkov        #address-cells = <1>;
952c44a993SDmitry Baryshkov        #size-cells = <1>;
962c44a993SDmitry Baryshkov        compatible = "qcom,sc7280-mdss";
972c44a993SDmitry Baryshkov        reg = <0xae00000 0x1000>;
982c44a993SDmitry Baryshkov        reg-names = "mdss";
992c44a993SDmitry Baryshkov        power-domains = <&dispcc DISP_CC_MDSS_CORE_GDSC>;
1002c44a993SDmitry Baryshkov        clocks = <&gcc GCC_DISP_AHB_CLK>,
1012c44a993SDmitry Baryshkov                 <&dispcc DISP_CC_MDSS_AHB_CLK>,
1022c44a993SDmitry Baryshkov                 <&dispcc DISP_CC_MDSS_MDP_CLK>;
1032c44a993SDmitry Baryshkov        clock-names = "iface",
1042c44a993SDmitry Baryshkov                      "ahb",
1052c44a993SDmitry Baryshkov                      "core";
1062c44a993SDmitry Baryshkov
1072c44a993SDmitry Baryshkov        interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1082c44a993SDmitry Baryshkov        interrupt-controller;
1092c44a993SDmitry Baryshkov        #interrupt-cells = <1>;
1102c44a993SDmitry Baryshkov
1112c44a993SDmitry Baryshkov        interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>;
1122c44a993SDmitry Baryshkov        interconnect-names = "mdp0-mem";
1132c44a993SDmitry Baryshkov
1142c44a993SDmitry Baryshkov        iommus = <&apps_smmu 0x900 0x402>;
1152c44a993SDmitry Baryshkov        ranges;
1162c44a993SDmitry Baryshkov
1172c44a993SDmitry Baryshkov        display-controller@ae01000 {
1182c44a993SDmitry Baryshkov            compatible = "qcom,sc7280-dpu";
1192c44a993SDmitry Baryshkov            reg = <0x0ae01000 0x8f000>,
1202c44a993SDmitry Baryshkov                  <0x0aeb0000 0x2008>;
1212c44a993SDmitry Baryshkov
1222c44a993SDmitry Baryshkov            reg-names = "mdp", "vbif";
1232c44a993SDmitry Baryshkov
1242c44a993SDmitry Baryshkov            clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
1252c44a993SDmitry Baryshkov                     <&gcc GCC_DISP_SF_AXI_CLK>,
1262c44a993SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_AHB_CLK>,
1272c44a993SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
1282c44a993SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_MDP_CLK>,
1292c44a993SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1302c44a993SDmitry Baryshkov            clock-names = "bus",
1312c44a993SDmitry Baryshkov                          "nrt_bus",
1322c44a993SDmitry Baryshkov                          "iface",
1332c44a993SDmitry Baryshkov                          "lut",
1342c44a993SDmitry Baryshkov                          "core",
1352c44a993SDmitry Baryshkov                          "vsync";
1362c44a993SDmitry Baryshkov
1372c44a993SDmitry Baryshkov            interrupt-parent = <&mdss>;
1382c44a993SDmitry Baryshkov            interrupts = <0>;
1392c44a993SDmitry Baryshkov            power-domains = <&rpmhpd SC7280_CX>;
1402c44a993SDmitry Baryshkov            operating-points-v2 = <&mdp_opp_table>;
1412c44a993SDmitry Baryshkov
1422c44a993SDmitry Baryshkov            ports {
1432c44a993SDmitry Baryshkov                #address-cells = <1>;
1442c44a993SDmitry Baryshkov                #size-cells = <0>;
1452c44a993SDmitry Baryshkov
1462c44a993SDmitry Baryshkov                port@0 {
1472c44a993SDmitry Baryshkov                    reg = <0>;
1482c44a993SDmitry Baryshkov                    dpu_intf1_out: endpoint {
1492c44a993SDmitry Baryshkov                        remote-endpoint = <&dsi0_in>;
1502c44a993SDmitry Baryshkov                    };
1512c44a993SDmitry Baryshkov                };
1522c44a993SDmitry Baryshkov
1532c44a993SDmitry Baryshkov                port@1 {
1542c44a993SDmitry Baryshkov                    reg = <1>;
1552c44a993SDmitry Baryshkov                    dpu_intf5_out: endpoint {
1562c44a993SDmitry Baryshkov                        remote-endpoint = <&edp_in>;
1572c44a993SDmitry Baryshkov                    };
1582c44a993SDmitry Baryshkov                };
1594b32e466SDmitry Baryshkov
1604b32e466SDmitry Baryshkov                port@2 {
1614b32e466SDmitry Baryshkov                    reg = <2>;
1624b32e466SDmitry Baryshkov                    dpu_intf0_out: endpoint {
1634b32e466SDmitry Baryshkov                        remote-endpoint = <&dp_in>;
1644b32e466SDmitry Baryshkov                    };
1654b32e466SDmitry Baryshkov                };
1664b32e466SDmitry Baryshkov            };
1674b32e466SDmitry Baryshkov        };
1684b32e466SDmitry Baryshkov
1694b32e466SDmitry Baryshkov        dsi@ae94000 {
1700c0f65c6SBryan O'Donoghue            compatible = "qcom,sc7280-dsi-ctrl", "qcom,mdss-dsi-ctrl";
1714b32e466SDmitry Baryshkov            reg = <0x0ae94000 0x400>;
1724b32e466SDmitry Baryshkov            reg-names = "dsi_ctrl";
1734b32e466SDmitry Baryshkov
1744b32e466SDmitry Baryshkov            interrupt-parent = <&mdss>;
1754b32e466SDmitry Baryshkov            interrupts = <4>;
1764b32e466SDmitry Baryshkov
1774b32e466SDmitry Baryshkov            clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
1784b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
1794b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
1804b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_ESC0_CLK>,
1814b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_AHB_CLK>,
1824b32e466SDmitry Baryshkov                     <&gcc GCC_DISP_HF_AXI_CLK>;
1834b32e466SDmitry Baryshkov            clock-names = "byte",
1844b32e466SDmitry Baryshkov                          "byte_intf",
1854b32e466SDmitry Baryshkov                          "pixel",
1864b32e466SDmitry Baryshkov                          "core",
1874b32e466SDmitry Baryshkov                          "iface",
1884b32e466SDmitry Baryshkov                          "bus";
1894b32e466SDmitry Baryshkov
1904b32e466SDmitry Baryshkov            assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
1914b32e466SDmitry Baryshkov                              <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
1924b32e466SDmitry Baryshkov            assigned-clock-parents = <&mdss_dsi_phy 0>, <&mdss_dsi_phy 1>;
1934b32e466SDmitry Baryshkov
1944b32e466SDmitry Baryshkov            operating-points-v2 = <&dsi_opp_table>;
1954b32e466SDmitry Baryshkov            power-domains = <&rpmhpd SC7280_CX>;
1964b32e466SDmitry Baryshkov
1974b32e466SDmitry Baryshkov            phys = <&mdss_dsi_phy>;
1984b32e466SDmitry Baryshkov            phy-names = "dsi";
1994b32e466SDmitry Baryshkov
2004b32e466SDmitry Baryshkov            #address-cells = <1>;
2014b32e466SDmitry Baryshkov            #size-cells = <0>;
2024b32e466SDmitry Baryshkov
2034b32e466SDmitry Baryshkov            ports {
2044b32e466SDmitry Baryshkov                #address-cells = <1>;
2054b32e466SDmitry Baryshkov                #size-cells = <0>;
2064b32e466SDmitry Baryshkov
2074b32e466SDmitry Baryshkov                port@0 {
2084b32e466SDmitry Baryshkov                    reg = <0>;
2094b32e466SDmitry Baryshkov                    dsi0_in: endpoint {
2104b32e466SDmitry Baryshkov                        remote-endpoint = <&dpu_intf1_out>;
2114b32e466SDmitry Baryshkov                    };
2124b32e466SDmitry Baryshkov                };
2134b32e466SDmitry Baryshkov
2144b32e466SDmitry Baryshkov                port@1 {
2154b32e466SDmitry Baryshkov                    reg = <1>;
2164b32e466SDmitry Baryshkov                    dsi0_out: endpoint {
2174b32e466SDmitry Baryshkov                    };
2184b32e466SDmitry Baryshkov                };
2194b32e466SDmitry Baryshkov            };
2204b32e466SDmitry Baryshkov
2214b32e466SDmitry Baryshkov            dsi_opp_table: opp-table {
2224b32e466SDmitry Baryshkov                compatible = "operating-points-v2";
2234b32e466SDmitry Baryshkov
2244b32e466SDmitry Baryshkov                opp-187500000 {
2254b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <187500000>;
2264b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_low_svs>;
2274b32e466SDmitry Baryshkov                };
2284b32e466SDmitry Baryshkov
2294b32e466SDmitry Baryshkov                opp-300000000 {
2304b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <300000000>;
2314b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_svs>;
2324b32e466SDmitry Baryshkov                };
2334b32e466SDmitry Baryshkov
2344b32e466SDmitry Baryshkov                opp-358000000 {
2354b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <358000000>;
2364b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_svs_l1>;
2374b32e466SDmitry Baryshkov                };
2384b32e466SDmitry Baryshkov            };
2394b32e466SDmitry Baryshkov        };
2404b32e466SDmitry Baryshkov
2414b32e466SDmitry Baryshkov        mdss_dsi_phy: phy@ae94400 {
2424b32e466SDmitry Baryshkov            compatible = "qcom,sc7280-dsi-phy-7nm";
2434b32e466SDmitry Baryshkov            reg = <0x0ae94400 0x200>,
2444b32e466SDmitry Baryshkov                  <0x0ae94600 0x280>,
2454b32e466SDmitry Baryshkov                  <0x0ae94900 0x280>;
2464b32e466SDmitry Baryshkov            reg-names = "dsi_phy",
2474b32e466SDmitry Baryshkov                        "dsi_phy_lane",
2484b32e466SDmitry Baryshkov                        "dsi_pll";
2494b32e466SDmitry Baryshkov
2504b32e466SDmitry Baryshkov            #clock-cells = <1>;
2514b32e466SDmitry Baryshkov            #phy-cells = <0>;
2524b32e466SDmitry Baryshkov
2534b32e466SDmitry Baryshkov            clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2544b32e466SDmitry Baryshkov                     <&rpmhcc RPMH_CXO_CLK>;
2554b32e466SDmitry Baryshkov            clock-names = "iface", "ref";
2564b32e466SDmitry Baryshkov
2574b32e466SDmitry Baryshkov            vdds-supply = <&vreg_dsi_supply>;
2584b32e466SDmitry Baryshkov        };
2594b32e466SDmitry Baryshkov
2604b32e466SDmitry Baryshkov        edp@aea0000 {
2614b32e466SDmitry Baryshkov            compatible = "qcom,sc7280-edp";
2624b32e466SDmitry Baryshkov            pinctrl-names = "default";
2634b32e466SDmitry Baryshkov            pinctrl-0 = <&edp_hot_plug_det>;
2644b32e466SDmitry Baryshkov
2654b32e466SDmitry Baryshkov            reg = <0xaea0000 0x200>,
2664b32e466SDmitry Baryshkov                  <0xaea0200 0x200>,
2674b32e466SDmitry Baryshkov                  <0xaea0400 0xc00>,
2684b32e466SDmitry Baryshkov                  <0xaea1000 0x400>;
2694b32e466SDmitry Baryshkov
2704b32e466SDmitry Baryshkov            interrupt-parent = <&mdss>;
2714b32e466SDmitry Baryshkov            interrupts = <14>;
2724b32e466SDmitry Baryshkov
2734b32e466SDmitry Baryshkov            clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2744b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_EDP_AUX_CLK>,
2754b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_EDP_LINK_CLK>,
2764b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_EDP_LINK_INTF_CLK>,
2774b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK>;
2784b32e466SDmitry Baryshkov            clock-names = "core_iface",
2794b32e466SDmitry Baryshkov                          "core_aux",
2804b32e466SDmitry Baryshkov                          "ctrl_link",
2814b32e466SDmitry Baryshkov                          "ctrl_link_iface",
2824b32e466SDmitry Baryshkov                          "stream_pixel";
2834b32e466SDmitry Baryshkov            assigned-clocks = <&dispcc DISP_CC_MDSS_EDP_LINK_CLK_SRC>,
2844b32e466SDmitry Baryshkov                              <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK_SRC>;
2854b32e466SDmitry Baryshkov            assigned-clock-parents = <&mdss_edp_phy 0>, <&mdss_edp_phy 1>;
2864b32e466SDmitry Baryshkov
2874b32e466SDmitry Baryshkov            phys = <&mdss_edp_phy>;
2884b32e466SDmitry Baryshkov            phy-names = "dp";
2894b32e466SDmitry Baryshkov
2904b32e466SDmitry Baryshkov            operating-points-v2 = <&edp_opp_table>;
2914b32e466SDmitry Baryshkov            power-domains = <&rpmhpd SC7280_CX>;
2924b32e466SDmitry Baryshkov
2934b32e466SDmitry Baryshkov            ports {
2944b32e466SDmitry Baryshkov                #address-cells = <1>;
2954b32e466SDmitry Baryshkov                #size-cells = <0>;
2964b32e466SDmitry Baryshkov
2974b32e466SDmitry Baryshkov                port@0 {
2984b32e466SDmitry Baryshkov                    reg = <0>;
2994b32e466SDmitry Baryshkov                    edp_in: endpoint {
3004b32e466SDmitry Baryshkov                        remote-endpoint = <&dpu_intf5_out>;
3014b32e466SDmitry Baryshkov                    };
3024b32e466SDmitry Baryshkov                };
3034b32e466SDmitry Baryshkov
3044b32e466SDmitry Baryshkov                port@1 {
3054b32e466SDmitry Baryshkov                    reg = <1>;
3064b32e466SDmitry Baryshkov                    mdss_edp_out: endpoint { };
3074b32e466SDmitry Baryshkov                };
3084b32e466SDmitry Baryshkov            };
3094b32e466SDmitry Baryshkov
3104b32e466SDmitry Baryshkov            edp_opp_table: opp-table {
3114b32e466SDmitry Baryshkov                compatible = "operating-points-v2";
3124b32e466SDmitry Baryshkov
3134b32e466SDmitry Baryshkov                opp-160000000 {
3144b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <160000000>;
3154b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_low_svs>;
3164b32e466SDmitry Baryshkov                };
3174b32e466SDmitry Baryshkov
3184b32e466SDmitry Baryshkov                opp-270000000 {
3194b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <270000000>;
3204b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_svs>;
3214b32e466SDmitry Baryshkov                };
3224b32e466SDmitry Baryshkov
3234b32e466SDmitry Baryshkov                opp-540000000 {
3244b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <540000000>;
3254b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_nom>;
3264b32e466SDmitry Baryshkov                };
3274b32e466SDmitry Baryshkov
3284b32e466SDmitry Baryshkov                opp-810000000 {
3294b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <810000000>;
3304b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_nom>;
3314b32e466SDmitry Baryshkov                };
3324b32e466SDmitry Baryshkov            };
3334b32e466SDmitry Baryshkov        };
3344b32e466SDmitry Baryshkov
3354b32e466SDmitry Baryshkov        mdss_edp_phy: phy@aec2a00 {
3364b32e466SDmitry Baryshkov            compatible = "qcom,sc7280-edp-phy";
3374b32e466SDmitry Baryshkov
3384b32e466SDmitry Baryshkov            reg = <0xaec2a00 0x19c>,
3394b32e466SDmitry Baryshkov                  <0xaec2200 0xa0>,
3404b32e466SDmitry Baryshkov                  <0xaec2600 0xa0>,
3414b32e466SDmitry Baryshkov                  <0xaec2000 0x1c0>;
3424b32e466SDmitry Baryshkov
3434b32e466SDmitry Baryshkov            clocks = <&rpmhcc RPMH_CXO_CLK>,
3444b32e466SDmitry Baryshkov                     <&gcc GCC_EDP_CLKREF_EN>;
3454b32e466SDmitry Baryshkov            clock-names = "aux",
3464b32e466SDmitry Baryshkov                          "cfg_ahb";
3474b32e466SDmitry Baryshkov
3484b32e466SDmitry Baryshkov            #clock-cells = <1>;
3494b32e466SDmitry Baryshkov            #phy-cells = <0>;
3504b32e466SDmitry Baryshkov        };
3514b32e466SDmitry Baryshkov
3524b32e466SDmitry Baryshkov        displayport-controller@ae90000 {
3534b32e466SDmitry Baryshkov            compatible = "qcom,sc7280-dp";
3544b32e466SDmitry Baryshkov
3554b32e466SDmitry Baryshkov            reg = <0xae90000 0x200>,
3564b32e466SDmitry Baryshkov                  <0xae90200 0x200>,
3574b32e466SDmitry Baryshkov                  <0xae90400 0xc00>,
3584b32e466SDmitry Baryshkov                  <0xae91000 0x400>,
3594b32e466SDmitry Baryshkov                  <0xae91400 0x400>;
3604b32e466SDmitry Baryshkov
3614b32e466SDmitry Baryshkov            interrupt-parent = <&mdss>;
3624b32e466SDmitry Baryshkov            interrupts = <12>;
3634b32e466SDmitry Baryshkov
3644b32e466SDmitry Baryshkov            clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3654b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_DP_AUX_CLK>,
3664b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_DP_LINK_CLK>,
3674b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>,
3684b32e466SDmitry Baryshkov                     <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>;
3694b32e466SDmitry Baryshkov            clock-names = "core_iface",
3704b32e466SDmitry Baryshkov                          "core_aux",
3714b32e466SDmitry Baryshkov                          "ctrl_link",
3724b32e466SDmitry Baryshkov                          "ctrl_link_iface",
3734b32e466SDmitry Baryshkov                          "stream_pixel";
3744b32e466SDmitry Baryshkov            assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>,
3754b32e466SDmitry Baryshkov                              <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>;
3764b32e466SDmitry Baryshkov            assigned-clock-parents = <&dp_phy 0>, <&dp_phy 1>;
3774b32e466SDmitry Baryshkov            phys = <&dp_phy>;
3784b32e466SDmitry Baryshkov            phy-names = "dp";
3794b32e466SDmitry Baryshkov
3804b32e466SDmitry Baryshkov            operating-points-v2 = <&dp_opp_table>;
3814b32e466SDmitry Baryshkov            power-domains = <&rpmhpd SC7280_CX>;
3824b32e466SDmitry Baryshkov
3834b32e466SDmitry Baryshkov            #sound-dai-cells = <0>;
3844b32e466SDmitry Baryshkov
3854b32e466SDmitry Baryshkov            ports {
3864b32e466SDmitry Baryshkov                #address-cells = <1>;
3874b32e466SDmitry Baryshkov                #size-cells = <0>;
3884b32e466SDmitry Baryshkov
3894b32e466SDmitry Baryshkov                port@0 {
3904b32e466SDmitry Baryshkov                    reg = <0>;
3914b32e466SDmitry Baryshkov                    dp_in: endpoint {
3924b32e466SDmitry Baryshkov                        remote-endpoint = <&dpu_intf0_out>;
3934b32e466SDmitry Baryshkov                    };
3944b32e466SDmitry Baryshkov                };
3954b32e466SDmitry Baryshkov
3964b32e466SDmitry Baryshkov                port@1 {
3974b32e466SDmitry Baryshkov                    reg = <1>;
3984b32e466SDmitry Baryshkov                    dp_out: endpoint { };
3994b32e466SDmitry Baryshkov                };
4004b32e466SDmitry Baryshkov            };
4014b32e466SDmitry Baryshkov
4024b32e466SDmitry Baryshkov            dp_opp_table: opp-table {
4034b32e466SDmitry Baryshkov                compatible = "operating-points-v2";
4044b32e466SDmitry Baryshkov
4054b32e466SDmitry Baryshkov                opp-160000000 {
4064b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <160000000>;
4074b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_low_svs>;
4084b32e466SDmitry Baryshkov                };
4094b32e466SDmitry Baryshkov
4104b32e466SDmitry Baryshkov                opp-270000000 {
4114b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <270000000>;
4124b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_svs>;
4134b32e466SDmitry Baryshkov                };
4144b32e466SDmitry Baryshkov
4154b32e466SDmitry Baryshkov                opp-540000000 {
4164b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <540000000>;
4174b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_svs_l1>;
4184b32e466SDmitry Baryshkov                };
4194b32e466SDmitry Baryshkov
4204b32e466SDmitry Baryshkov                opp-810000000 {
4214b32e466SDmitry Baryshkov                    opp-hz = /bits/ 64 <810000000>;
4224b32e466SDmitry Baryshkov                    required-opps = <&rpmhpd_opp_nom>;
4234b32e466SDmitry Baryshkov                };
4242c44a993SDmitry Baryshkov            };
4252c44a993SDmitry Baryshkov        };
4262c44a993SDmitry Baryshkov    };
4272c44a993SDmitry Baryshkov...
428