1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/display/msm/dp-controller.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: MSM Display Port Controller 8 9maintainers: 10 - Kuogee Hsieh <quic_khsieh@quicinc.com> 11 12description: | 13 Device tree bindings for DisplayPort host controller for MSM targets 14 that are compatible with VESA DisplayPort interface specification. 15 16properties: 17 compatible: 18 enum: 19 - qcom,sc7180-dp 20 - qcom,sc7280-dp 21 - qcom,sc7280-edp 22 - qcom,sc8180x-dp 23 - qcom,sc8180x-edp 24 - qcom,sm8350-dp 25 26 reg: 27 minItems: 4 28 items: 29 - description: ahb register block 30 - description: aux register block 31 - description: link register block 32 - description: p0 register block 33 - description: p1 register block 34 35 interrupts: 36 maxItems: 1 37 38 clocks: 39 items: 40 - description: AHB clock to enable register access 41 - description: Display Port AUX clock 42 - description: Display Port Link clock 43 - description: Link interface clock between DP and PHY 44 - description: Display Port Pixel clock 45 46 clock-names: 47 items: 48 - const: core_iface 49 - const: core_aux 50 - const: ctrl_link 51 - const: ctrl_link_iface 52 - const: stream_pixel 53 54 assigned-clocks: 55 items: 56 - description: link clock source 57 - description: pixel clock source 58 59 assigned-clock-parents: 60 items: 61 - description: phy 0 parent 62 - description: phy 1 parent 63 64 phys: 65 maxItems: 1 66 67 phy-names: 68 items: 69 - const: dp 70 71 operating-points-v2: 72 maxItems: 1 73 74 opp-table: true 75 76 power-domains: 77 maxItems: 1 78 79 aux-bus: 80 $ref: /schemas/display/dp-aux-bus.yaml# 81 82 data-lanes: 83 $ref: /schemas/types.yaml#/definitions/uint32-array 84 minItems: 1 85 maxItems: 4 86 items: 87 maximum: 3 88 89 "#sound-dai-cells": 90 const: 0 91 92 vdda-0p9-supply: 93 deprecated: true 94 vdda-1p2-supply: 95 deprecated: true 96 97 ports: 98 $ref: /schemas/graph.yaml#/properties/ports 99 properties: 100 port@0: 101 $ref: /schemas/graph.yaml#/properties/port 102 description: Input endpoint of the controller 103 104 port@1: 105 $ref: /schemas/graph.yaml#/properties/port 106 description: Output endpoint of the controller 107 108required: 109 - compatible 110 - reg 111 - interrupts 112 - clocks 113 - clock-names 114 - phys 115 - phy-names 116 - power-domains 117 - ports 118 119allOf: 120 # AUX BUS does not exist on DP controllers 121 # Audio output also is present only on DP output 122 # p1 regions is present on DP, but not on eDP 123 - if: 124 properties: 125 compatible: 126 contains: 127 enum: 128 - qcom,sc7280-edp 129 - qcom,sc8180x-edp 130 then: 131 properties: 132 "#sound-dai-cells": false 133 reg: 134 maxItems: 4 135 else: 136 properties: 137 aux-bus: false 138 reg: 139 minItems: 5 140 required: 141 - "#sound-dai-cells" 142 143additionalProperties: false 144 145examples: 146 - | 147 #include <dt-bindings/interrupt-controller/arm-gic.h> 148 #include <dt-bindings/clock/qcom,dispcc-sc7180.h> 149 #include <dt-bindings/power/qcom-rpmpd.h> 150 151 displayport-controller@ae90000 { 152 compatible = "qcom,sc7180-dp"; 153 reg = <0xae90000 0x200>, 154 <0xae90200 0x200>, 155 <0xae90400 0xc00>, 156 <0xae91000 0x400>, 157 <0xae91400 0x400>; 158 interrupt-parent = <&mdss>; 159 interrupts = <12>; 160 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 161 <&dispcc DISP_CC_MDSS_DP_AUX_CLK>, 162 <&dispcc DISP_CC_MDSS_DP_LINK_CLK>, 163 <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>, 164 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>; 165 clock-names = "core_iface", "core_aux", 166 "ctrl_link", 167 "ctrl_link_iface", "stream_pixel"; 168 169 assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>, 170 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>; 171 172 assigned-clock-parents = <&dp_phy 0>, <&dp_phy 1>; 173 174 phys = <&dp_phy>; 175 phy-names = "dp"; 176 177 #sound-dai-cells = <0>; 178 179 power-domains = <&rpmhpd SC7180_CX>; 180 181 ports { 182 #address-cells = <1>; 183 #size-cells = <0>; 184 185 port@0 { 186 reg = <0>; 187 endpoint { 188 remote-endpoint = <&dpu_intf0_out>; 189 }; 190 }; 191 192 port@1 { 193 reg = <1>; 194 endpoint { 195 remote-endpoint = <&typec>; 196 }; 197 }; 198 }; 199 }; 200... 201