1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/display/msm/qcom,sm7150-dpu.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: Qualcomm SM7150 Display Processing Unit (DPU) 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel Vadotmaintainers: 10*0e8011faSEmmanuel Vadot - Danila Tikhonov <danila@jiaxyga.com> 11*0e8011faSEmmanuel Vadot 12*0e8011faSEmmanuel Vadot$ref: /schemas/display/msm/dpu-common.yaml# 13*0e8011faSEmmanuel Vadot 14*0e8011faSEmmanuel Vadotproperties: 15*0e8011faSEmmanuel Vadot compatible: 16*0e8011faSEmmanuel Vadot const: qcom,sm7150-dpu 17*0e8011faSEmmanuel Vadot 18*0e8011faSEmmanuel Vadot reg: 19*0e8011faSEmmanuel Vadot items: 20*0e8011faSEmmanuel Vadot - description: Address offset and size for mdp register set 21*0e8011faSEmmanuel Vadot - description: Address offset and size for vbif register set 22*0e8011faSEmmanuel Vadot 23*0e8011faSEmmanuel Vadot reg-names: 24*0e8011faSEmmanuel Vadot items: 25*0e8011faSEmmanuel Vadot - const: mdp 26*0e8011faSEmmanuel Vadot - const: vbif 27*0e8011faSEmmanuel Vadot 28*0e8011faSEmmanuel Vadot clocks: 29*0e8011faSEmmanuel Vadot items: 30*0e8011faSEmmanuel Vadot - description: Display hf axi clock 31*0e8011faSEmmanuel Vadot - description: Display ahb clock 32*0e8011faSEmmanuel Vadot - description: Display rotator clock 33*0e8011faSEmmanuel Vadot - description: Display lut clock 34*0e8011faSEmmanuel Vadot - description: Display core clock 35*0e8011faSEmmanuel Vadot - description: Display vsync clock 36*0e8011faSEmmanuel Vadot 37*0e8011faSEmmanuel Vadot clock-names: 38*0e8011faSEmmanuel Vadot items: 39*0e8011faSEmmanuel Vadot - const: bus 40*0e8011faSEmmanuel Vadot - const: iface 41*0e8011faSEmmanuel Vadot - const: rot 42*0e8011faSEmmanuel Vadot - const: lut 43*0e8011faSEmmanuel Vadot - const: core 44*0e8011faSEmmanuel Vadot - const: vsync 45*0e8011faSEmmanuel Vadot 46*0e8011faSEmmanuel Vadotrequired: 47*0e8011faSEmmanuel Vadot - compatible 48*0e8011faSEmmanuel Vadot - reg 49*0e8011faSEmmanuel Vadot - reg-names 50*0e8011faSEmmanuel Vadot - clocks 51*0e8011faSEmmanuel Vadot - clock-names 52*0e8011faSEmmanuel Vadot 53*0e8011faSEmmanuel VadotunevaluatedProperties: false 54*0e8011faSEmmanuel Vadot 55*0e8011faSEmmanuel Vadotexamples: 56*0e8011faSEmmanuel Vadot - | 57*0e8011faSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 58*0e8011faSEmmanuel Vadot #include <dt-bindings/power/qcom,rpmhpd.h> 59*0e8011faSEmmanuel Vadot 60*0e8011faSEmmanuel Vadot display-controller@ae01000 { 61*0e8011faSEmmanuel Vadot compatible = "qcom,sm7150-dpu"; 62*0e8011faSEmmanuel Vadot reg = <0x0ae01000 0x8f000>, 63*0e8011faSEmmanuel Vadot <0x0aeb0000 0x2008>; 64*0e8011faSEmmanuel Vadot reg-names = "mdp", "vbif"; 65*0e8011faSEmmanuel Vadot 66*0e8011faSEmmanuel Vadot clocks = <&gcc_disp_hf_axi_clk>, 67*0e8011faSEmmanuel Vadot <&dispcc_mdss_ahb_clk>, 68*0e8011faSEmmanuel Vadot <&dispcc_mdss_rot_clk>, 69*0e8011faSEmmanuel Vadot <&dispcc_mdss_mdp_lut_clk>, 70*0e8011faSEmmanuel Vadot <&dispcc_mdss_mdp_clk>, 71*0e8011faSEmmanuel Vadot <&dispcc_mdss_vsync_clk>; 72*0e8011faSEmmanuel Vadot clock-names = "bus", 73*0e8011faSEmmanuel Vadot "iface", 74*0e8011faSEmmanuel Vadot "rot", 75*0e8011faSEmmanuel Vadot "lut", 76*0e8011faSEmmanuel Vadot "core", 77*0e8011faSEmmanuel Vadot "vsync"; 78*0e8011faSEmmanuel Vadot 79*0e8011faSEmmanuel Vadot assigned-clocks = <&dispcc_mdss_vsync_clk>; 80*0e8011faSEmmanuel Vadot assigned-clock-rates = <19200000>; 81*0e8011faSEmmanuel Vadot 82*0e8011faSEmmanuel Vadot operating-points-v2 = <&mdp_opp_table>; 83*0e8011faSEmmanuel Vadot power-domains = <&rpmhpd RPMHPD_CX>; 84*0e8011faSEmmanuel Vadot 85*0e8011faSEmmanuel Vadot interrupt-parent = <&mdss>; 86*0e8011faSEmmanuel Vadot interrupts = <0>; 87*0e8011faSEmmanuel Vadot 88*0e8011faSEmmanuel Vadot ports { 89*0e8011faSEmmanuel Vadot #address-cells = <1>; 90*0e8011faSEmmanuel Vadot #size-cells = <0>; 91*0e8011faSEmmanuel Vadot 92*0e8011faSEmmanuel Vadot port@0 { 93*0e8011faSEmmanuel Vadot reg = <0>; 94*0e8011faSEmmanuel Vadot dpu_intf1_out: endpoint { 95*0e8011faSEmmanuel Vadot remote-endpoint = <&mdss_dsi0_in>; 96*0e8011faSEmmanuel Vadot }; 97*0e8011faSEmmanuel Vadot }; 98*0e8011faSEmmanuel Vadot 99*0e8011faSEmmanuel Vadot port@1 { 100*0e8011faSEmmanuel Vadot reg = <1>; 101*0e8011faSEmmanuel Vadot dpu_intf2_out: endpoint { 102*0e8011faSEmmanuel Vadot remote-endpoint = <&mdss_dsi1_in>; 103*0e8011faSEmmanuel Vadot }; 104*0e8011faSEmmanuel Vadot }; 105*0e8011faSEmmanuel Vadot 106*0e8011faSEmmanuel Vadot port@2 { 107*0e8011faSEmmanuel Vadot reg = <2>; 108*0e8011faSEmmanuel Vadot dpu_intf0_out: endpoint { 109*0e8011faSEmmanuel Vadot remote-endpoint = <&dp_in>; 110*0e8011faSEmmanuel Vadot }; 111*0e8011faSEmmanuel Vadot }; 112*0e8011faSEmmanuel Vadot }; 113*0e8011faSEmmanuel Vadot 114*0e8011faSEmmanuel Vadot mdp_opp_table: opp-table { 115*0e8011faSEmmanuel Vadot compatible = "operating-points-v2"; 116*0e8011faSEmmanuel Vadot 117*0e8011faSEmmanuel Vadot opp-19200000 { 118*0e8011faSEmmanuel Vadot opp-hz = /bits/ 64 <19200000>; 119*0e8011faSEmmanuel Vadot required-opps = <&rpmhpd_opp_min_svs>; 120*0e8011faSEmmanuel Vadot }; 121*0e8011faSEmmanuel Vadot 122*0e8011faSEmmanuel Vadot opp-200000000 { 123*0e8011faSEmmanuel Vadot opp-hz = /bits/ 64 <200000000>; 124*0e8011faSEmmanuel Vadot required-opps = <&rpmhpd_opp_low_svs>; 125*0e8011faSEmmanuel Vadot }; 126*0e8011faSEmmanuel Vadot 127*0e8011faSEmmanuel Vadot opp-300000000 { 128*0e8011faSEmmanuel Vadot opp-hz = /bits/ 64 <300000000>; 129*0e8011faSEmmanuel Vadot required-opps = <&rpmhpd_opp_svs>; 130*0e8011faSEmmanuel Vadot }; 131*0e8011faSEmmanuel Vadot 132*0e8011faSEmmanuel Vadot opp-344000000 { 133*0e8011faSEmmanuel Vadot opp-hz = /bits/ 64 <344000000>; 134*0e8011faSEmmanuel Vadot required-opps = <&rpmhpd_opp_svs_l1>; 135*0e8011faSEmmanuel Vadot }; 136*0e8011faSEmmanuel Vadot 137*0e8011faSEmmanuel Vadot opp-430000000 { 138*0e8011faSEmmanuel Vadot opp-hz = /bits/ 64 <430000000>; 139*0e8011faSEmmanuel Vadot required-opps = <&rpmhpd_opp_nom>; 140*0e8011faSEmmanuel Vadot }; 141*0e8011faSEmmanuel Vadot }; 142*0e8011faSEmmanuel Vadot }; 143*0e8011faSEmmanuel Vadot... 144