| # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/display/msm/qcom,sm7150-dpu.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Qualcomm SM7150 Display Processing Unit (DPU) |
| |
| maintainers: |
| - Danila Tikhonov <danila@jiaxyga.com> |
| |
| $ref: /schemas/display/msm/dpu-common.yaml# |
| |
| properties: |
| compatible: |
| const: qcom,sm7150-dpu |
| |
| reg: |
| items: |
| - description: Address offset and size for mdp register set |
| - description: Address offset and size for vbif register set |
| |
| reg-names: |
| items: |
| - const: mdp |
| - const: vbif |
| |
| clocks: |
| items: |
| - description: Display hf axi clock |
| - description: Display ahb clock |
| - description: Display rotator clock |
| - description: Display lut clock |
| - description: Display core clock |
| - description: Display vsync clock |
| |
| clock-names: |
| items: |
| - const: bus |
| - const: iface |
| - const: rot |
| - const: lut |
| - const: core |
| - const: vsync |
| |
| required: |
| - compatible |
| - reg |
| - reg-names |
| - clocks |
| - clock-names |
| |
| unevaluatedProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/interrupt-controller/arm-gic.h> |
| #include <dt-bindings/power/qcom,rpmhpd.h> |
| |
| display-controller@ae01000 { |
| compatible = "qcom,sm7150-dpu"; |
| reg = <0x0ae01000 0x8f000>, |
| <0x0aeb0000 0x2008>; |
| reg-names = "mdp", "vbif"; |
| |
| clocks = <&gcc_disp_hf_axi_clk>, |
| <&dispcc_mdss_ahb_clk>, |
| <&dispcc_mdss_rot_clk>, |
| <&dispcc_mdss_mdp_lut_clk>, |
| <&dispcc_mdss_mdp_clk>, |
| <&dispcc_mdss_vsync_clk>; |
| clock-names = "bus", |
| "iface", |
| "rot", |
| "lut", |
| "core", |
| "vsync"; |
| |
| assigned-clocks = <&dispcc_mdss_vsync_clk>; |
| assigned-clock-rates = <19200000>; |
| |
| operating-points-v2 = <&mdp_opp_table>; |
| power-domains = <&rpmhpd RPMHPD_CX>; |
| |
| interrupt-parent = <&mdss>; |
| interrupts = <0>; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| port@0 { |
| reg = <0>; |
| dpu_intf1_out: endpoint { |
| remote-endpoint = <&mdss_dsi0_in>; |
| }; |
| }; |
| |
| port@1 { |
| reg = <1>; |
| dpu_intf2_out: endpoint { |
| remote-endpoint = <&mdss_dsi1_in>; |
| }; |
| }; |
| |
| port@2 { |
| reg = <2>; |
| dpu_intf0_out: endpoint { |
| remote-endpoint = <&dp_in>; |
| }; |
| }; |
| }; |
| |
| mdp_opp_table: opp-table { |
| compatible = "operating-points-v2"; |
| |
| opp-19200000 { |
| opp-hz = /bits/ 64 <19200000>; |
| required-opps = <&rpmhpd_opp_min_svs>; |
| }; |
| |
| opp-200000000 { |
| opp-hz = /bits/ 64 <200000000>; |
| required-opps = <&rpmhpd_opp_low_svs>; |
| }; |
| |
| opp-300000000 { |
| opp-hz = /bits/ 64 <300000000>; |
| required-opps = <&rpmhpd_opp_svs>; |
| }; |
| |
| opp-344000000 { |
| opp-hz = /bits/ 64 <344000000>; |
| required-opps = <&rpmhpd_opp_svs_l1>; |
| }; |
| |
| opp-430000000 { |
| opp-hz = /bits/ 64 <430000000>; |
| required-opps = <&rpmhpd_opp_nom>; |
| }; |
| }; |
| }; |
| ... |