1665a6961SKrishna Manikandan# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2665a6961SKrishna Manikandan%YAML 1.2 3665a6961SKrishna Manikandan--- 4665a6961SKrishna Manikandan$id: http://devicetree.org/schemas/display/msm/dp-controller.yaml# 5665a6961SKrishna Manikandan$schema: http://devicetree.org/meta-schemas/core.yaml# 6665a6961SKrishna Manikandan 7665a6961SKrishna Manikandantitle: MSM Display Port Controller 8665a6961SKrishna Manikandan 9665a6961SKrishna Manikandanmaintainers: 1001161a5cSKuogee Hsieh - Kuogee Hsieh <quic_khsieh@quicinc.com> 11665a6961SKrishna Manikandan 12665a6961SKrishna Manikandandescription: | 13665a6961SKrishna Manikandan Device tree bindings for DisplayPort host controller for MSM targets 14665a6961SKrishna Manikandan that are compatible with VESA DisplayPort interface specification. 15665a6961SKrishna Manikandan 16665a6961SKrishna Manikandanproperties: 17665a6961SKrishna Manikandan compatible: 188707ba05SNeil Armstrong oneOf: 198707ba05SNeil Armstrong - enum: 20665a6961SKrishna Manikandan - qcom,sc7180-dp 210a697b9cSSankeerth Billakanti - qcom,sc7280-dp 220a697b9cSSankeerth Billakanti - qcom,sc7280-edp 23e60af4f8SBjorn Andersson - qcom,sc8180x-dp 24e60af4f8SBjorn Andersson - qcom,sc8180x-edp 25b6f8c4deSBjorn Andersson - qcom,sc8280xp-dp 26b6f8c4deSBjorn Andersson - qcom,sc8280xp-edp 27b6f8c4deSBjorn Andersson - qcom,sdm845-dp 28f5408b21SBjorn Andersson - qcom,sm8350-dp 29157fd368SNeil Armstrong - qcom,sm8650-dp 308707ba05SNeil Armstrong - items: 318707ba05SNeil Armstrong - enum: 32*39086151SLuca Weiss - qcom,sm6350-dp 3388806318SDmitry Baryshkov - qcom,sm8150-dp 34cc9a7971SDmitry Baryshkov - qcom,sm8250-dp 358707ba05SNeil Armstrong - qcom,sm8450-dp 3676015b9eSNeil Armstrong - qcom,sm8550-dp 378707ba05SNeil Armstrong - const: qcom,sm8350-dp 38665a6961SKrishna Manikandan 39665a6961SKrishna Manikandan reg: 40122b17f3SDmitry Baryshkov minItems: 4 41687825c4SBjorn Andersson items: 42687825c4SBjorn Andersson - description: ahb register block 43687825c4SBjorn Andersson - description: aux register block 44687825c4SBjorn Andersson - description: link register block 45687825c4SBjorn Andersson - description: p0 register block 46687825c4SBjorn Andersson - description: p1 register block 47665a6961SKrishna Manikandan 48665a6961SKrishna Manikandan interrupts: 49665a6961SKrishna Manikandan maxItems: 1 50665a6961SKrishna Manikandan 51665a6961SKrishna Manikandan clocks: 52665a6961SKrishna Manikandan items: 53665a6961SKrishna Manikandan - description: AHB clock to enable register access 54665a6961SKrishna Manikandan - description: Display Port AUX clock 55665a6961SKrishna Manikandan - description: Display Port Link clock 56665a6961SKrishna Manikandan - description: Link interface clock between DP and PHY 57665a6961SKrishna Manikandan - description: Display Port Pixel clock 58665a6961SKrishna Manikandan 59665a6961SKrishna Manikandan clock-names: 60665a6961SKrishna Manikandan items: 61665a6961SKrishna Manikandan - const: core_iface 62665a6961SKrishna Manikandan - const: core_aux 63665a6961SKrishna Manikandan - const: ctrl_link 64665a6961SKrishna Manikandan - const: ctrl_link_iface 65665a6961SKrishna Manikandan - const: stream_pixel 66665a6961SKrishna Manikandan 67665a6961SKrishna Manikandan assigned-clocks: 68665a6961SKrishna Manikandan items: 69665a6961SKrishna Manikandan - description: link clock source 70665a6961SKrishna Manikandan - description: pixel clock source 71665a6961SKrishna Manikandan 72665a6961SKrishna Manikandan assigned-clock-parents: 73665a6961SKrishna Manikandan items: 74665a6961SKrishna Manikandan - description: phy 0 parent 75665a6961SKrishna Manikandan - description: phy 1 parent 76665a6961SKrishna Manikandan 77665a6961SKrishna Manikandan phys: 78665a6961SKrishna Manikandan maxItems: 1 79665a6961SKrishna Manikandan 80665a6961SKrishna Manikandan phy-names: 81665a6961SKrishna Manikandan items: 82665a6961SKrishna Manikandan - const: dp 83665a6961SKrishna Manikandan 8421fd06dcSKrzysztof Kozlowski operating-points-v2: true 85665a6961SKrishna Manikandan 86ae23f141SKrzysztof Kozlowski opp-table: 87ae23f141SKrzysztof Kozlowski type: object 8833468f4dSDmitry Baryshkov 89665a6961SKrishna Manikandan power-domains: 90665a6961SKrishna Manikandan maxItems: 1 91665a6961SKrishna Manikandan 9233468f4dSDmitry Baryshkov aux-bus: 9333468f4dSDmitry Baryshkov $ref: /schemas/display/dp-aux-bus.yaml# 9433468f4dSDmitry Baryshkov 9533468f4dSDmitry Baryshkov data-lanes: 9633468f4dSDmitry Baryshkov $ref: /schemas/types.yaml#/definitions/uint32-array 97123f1255SKuogee Hsieh deprecated: true 9833468f4dSDmitry Baryshkov minItems: 1 9933468f4dSDmitry Baryshkov maxItems: 4 10033468f4dSDmitry Baryshkov items: 10133468f4dSDmitry Baryshkov maximum: 3 10233468f4dSDmitry Baryshkov 103665a6961SKrishna Manikandan "#sound-dai-cells": 104665a6961SKrishna Manikandan const: 0 105665a6961SKrishna Manikandan 106fd713be0SDmitry Baryshkov vdda-0p9-supply: 107fd713be0SDmitry Baryshkov deprecated: true 108fd713be0SDmitry Baryshkov vdda-1p2-supply: 109fd713be0SDmitry Baryshkov deprecated: true 110ce557eafSDouglas Anderson 111665a6961SKrishna Manikandan ports: 112665a6961SKrishna Manikandan $ref: /schemas/graph.yaml#/properties/ports 113665a6961SKrishna Manikandan properties: 114665a6961SKrishna Manikandan port@0: 115665a6961SKrishna Manikandan $ref: /schemas/graph.yaml#/properties/port 116665a6961SKrishna Manikandan description: Input endpoint of the controller 117665a6961SKrishna Manikandan 118665a6961SKrishna Manikandan port@1: 119123f1255SKuogee Hsieh $ref: /schemas/graph.yaml#/$defs/port-base 120b3eb5bd3SRob Herring unevaluatedProperties: false 121665a6961SKrishna Manikandan description: Output endpoint of the controller 122123f1255SKuogee Hsieh properties: 123123f1255SKuogee Hsieh endpoint: 124123f1255SKuogee Hsieh $ref: /schemas/media/video-interfaces.yaml# 125123f1255SKuogee Hsieh unevaluatedProperties: false 126123f1255SKuogee Hsieh properties: 127123f1255SKuogee Hsieh data-lanes: 128123f1255SKuogee Hsieh minItems: 1 129123f1255SKuogee Hsieh maxItems: 4 130123f1255SKuogee Hsieh items: 131123f1255SKuogee Hsieh enum: [ 0, 1, 2, 3 ] 132123f1255SKuogee Hsieh 133123f1255SKuogee Hsieh link-frequencies: 134123f1255SKuogee Hsieh minItems: 1 135123f1255SKuogee Hsieh maxItems: 4 136123f1255SKuogee Hsieh items: 137123f1255SKuogee Hsieh enum: [ 1620000000, 2700000000, 5400000000, 8100000000 ] 138123f1255SKuogee Hsieh 139123f1255SKuogee Hsieh required: 140123f1255SKuogee Hsieh - port@0 141123f1255SKuogee Hsieh - port@1 142665a6961SKrishna Manikandan 143665a6961SKrishna Manikandanrequired: 144665a6961SKrishna Manikandan - compatible 145665a6961SKrishna Manikandan - reg 146665a6961SKrishna Manikandan - interrupts 147665a6961SKrishna Manikandan - clocks 148665a6961SKrishna Manikandan - clock-names 149665a6961SKrishna Manikandan - phys 150665a6961SKrishna Manikandan - phy-names 151665a6961SKrishna Manikandan - power-domains 152665a6961SKrishna Manikandan - ports 153665a6961SKrishna Manikandan 154122b17f3SDmitry BaryshkovallOf: 155122b17f3SDmitry Baryshkov # AUX BUS does not exist on DP controllers 156122b17f3SDmitry Baryshkov # Audio output also is present only on DP output 157122b17f3SDmitry Baryshkov # p1 regions is present on DP, but not on eDP 158122b17f3SDmitry Baryshkov - if: 159122b17f3SDmitry Baryshkov properties: 160122b17f3SDmitry Baryshkov compatible: 161122b17f3SDmitry Baryshkov contains: 162122b17f3SDmitry Baryshkov enum: 163122b17f3SDmitry Baryshkov - qcom,sc7280-edp 164122b17f3SDmitry Baryshkov - qcom,sc8180x-edp 1657617aba0SDmitry Baryshkov - qcom,sc8280xp-edp 166122b17f3SDmitry Baryshkov then: 167122b17f3SDmitry Baryshkov properties: 168122b17f3SDmitry Baryshkov "#sound-dai-cells": false 169122b17f3SDmitry Baryshkov else: 170122b17f3SDmitry Baryshkov properties: 171122b17f3SDmitry Baryshkov aux-bus: false 172122b17f3SDmitry Baryshkov reg: 173122b17f3SDmitry Baryshkov minItems: 5 174122b17f3SDmitry Baryshkov required: 175122b17f3SDmitry Baryshkov - "#sound-dai-cells" 176122b17f3SDmitry Baryshkov 177665a6961SKrishna ManikandanadditionalProperties: false 178665a6961SKrishna Manikandan 179665a6961SKrishna Manikandanexamples: 180665a6961SKrishna Manikandan - | 181665a6961SKrishna Manikandan #include <dt-bindings/interrupt-controller/arm-gic.h> 182665a6961SKrishna Manikandan #include <dt-bindings/clock/qcom,dispcc-sc7180.h> 183665a6961SKrishna Manikandan #include <dt-bindings/power/qcom-rpmpd.h> 184665a6961SKrishna Manikandan 185665a6961SKrishna Manikandan displayport-controller@ae90000 { 186665a6961SKrishna Manikandan compatible = "qcom,sc7180-dp"; 187687825c4SBjorn Andersson reg = <0xae90000 0x200>, 188687825c4SBjorn Andersson <0xae90200 0x200>, 189687825c4SBjorn Andersson <0xae90400 0xc00>, 190687825c4SBjorn Andersson <0xae91000 0x400>, 191687825c4SBjorn Andersson <0xae91400 0x400>; 192665a6961SKrishna Manikandan interrupt-parent = <&mdss>; 193665a6961SKrishna Manikandan interrupts = <12>; 194665a6961SKrishna Manikandan clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, 195665a6961SKrishna Manikandan <&dispcc DISP_CC_MDSS_DP_AUX_CLK>, 196665a6961SKrishna Manikandan <&dispcc DISP_CC_MDSS_DP_LINK_CLK>, 197665a6961SKrishna Manikandan <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>, 198665a6961SKrishna Manikandan <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>; 199665a6961SKrishna Manikandan clock-names = "core_iface", "core_aux", 200665a6961SKrishna Manikandan "ctrl_link", 201665a6961SKrishna Manikandan "ctrl_link_iface", "stream_pixel"; 202665a6961SKrishna Manikandan 203665a6961SKrishna Manikandan assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>, 204665a6961SKrishna Manikandan <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>; 205665a6961SKrishna Manikandan 206665a6961SKrishna Manikandan assigned-clock-parents = <&dp_phy 0>, <&dp_phy 1>; 207665a6961SKrishna Manikandan 208665a6961SKrishna Manikandan phys = <&dp_phy>; 209665a6961SKrishna Manikandan phy-names = "dp"; 210665a6961SKrishna Manikandan 211665a6961SKrishna Manikandan #sound-dai-cells = <0>; 212665a6961SKrishna Manikandan 213665a6961SKrishna Manikandan power-domains = <&rpmhpd SC7180_CX>; 214665a6961SKrishna Manikandan 215665a6961SKrishna Manikandan ports { 216665a6961SKrishna Manikandan #address-cells = <1>; 217665a6961SKrishna Manikandan #size-cells = <0>; 218665a6961SKrishna Manikandan 219665a6961SKrishna Manikandan port@0 { 220665a6961SKrishna Manikandan reg = <0>; 221665a6961SKrishna Manikandan endpoint { 222665a6961SKrishna Manikandan remote-endpoint = <&dpu_intf0_out>; 223665a6961SKrishna Manikandan }; 224665a6961SKrishna Manikandan }; 225665a6961SKrishna Manikandan 226665a6961SKrishna Manikandan port@1 { 227665a6961SKrishna Manikandan reg = <1>; 228665a6961SKrishna Manikandan endpoint { 229665a6961SKrishna Manikandan remote-endpoint = <&typec>; 230123f1255SKuogee Hsieh data-lanes = <0 1>; 231123f1255SKuogee Hsieh link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; 232665a6961SKrishna Manikandan }; 233665a6961SKrishna Manikandan }; 234665a6961SKrishna Manikandan }; 235665a6961SKrishna Manikandan }; 236665a6961SKrishna Manikandan... 237