xref: /linux/Documentation/devicetree/bindings/interconnect/qcom,eliza-rpmh.yaml (revision 0990a71f678aa0f045f2c126b39b6b581844d3b0)
1*8300438dSOdelu Kukatla# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*8300438dSOdelu Kukatla%YAML 1.2
3*8300438dSOdelu Kukatla---
4*8300438dSOdelu Kukatla$id: http://devicetree.org/schemas/interconnect/qcom,eliza-rpmh.yaml#
5*8300438dSOdelu Kukatla$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8300438dSOdelu Kukatla
7*8300438dSOdelu Kukatlatitle: Qualcomm RPMh Network-On-Chip Interconnect on Eliza SoC
8*8300438dSOdelu Kukatla
9*8300438dSOdelu Kukatlamaintainers:
10*8300438dSOdelu Kukatla  - Odelu Kukatla <odelu.kukatla@oss.qualcomm.com>
11*8300438dSOdelu Kukatla
12*8300438dSOdelu Kukatladescription: |
13*8300438dSOdelu Kukatla  RPMh interconnect providers support system bandwidth requirements through
14*8300438dSOdelu Kukatla  RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
15*8300438dSOdelu Kukatla  able to communicate with the BCM through the Resource State Coordinator (RSC)
16*8300438dSOdelu Kukatla  associated with each execution environment. Provider nodes must point to at
17*8300438dSOdelu Kukatla  least one RPMh device child node pertaining to their RSC and each provider
18*8300438dSOdelu Kukatla  can map to multiple RPMh resources.
19*8300438dSOdelu Kukatla
20*8300438dSOdelu Kukatla  See also: include/dt-bindings/interconnect/qcom,eliza-rpmh.h
21*8300438dSOdelu Kukatla
22*8300438dSOdelu Kukatlaproperties:
23*8300438dSOdelu Kukatla  compatible:
24*8300438dSOdelu Kukatla    enum:
25*8300438dSOdelu Kukatla      - qcom,eliza-aggre1-noc
26*8300438dSOdelu Kukatla      - qcom,eliza-aggre2-noc
27*8300438dSOdelu Kukatla      - qcom,eliza-clk-virt
28*8300438dSOdelu Kukatla      - qcom,eliza-cnoc-cfg
29*8300438dSOdelu Kukatla      - qcom,eliza-cnoc-main
30*8300438dSOdelu Kukatla      - qcom,eliza-gem-noc
31*8300438dSOdelu Kukatla      - qcom,eliza-lpass-ag-noc
32*8300438dSOdelu Kukatla      - qcom,eliza-lpass-lpiaon-noc
33*8300438dSOdelu Kukatla      - qcom,eliza-lpass-lpicx-noc
34*8300438dSOdelu Kukatla      - qcom,eliza-mc-virt
35*8300438dSOdelu Kukatla      - qcom,eliza-mmss-noc
36*8300438dSOdelu Kukatla      - qcom,eliza-nsp-noc
37*8300438dSOdelu Kukatla      - qcom,eliza-pcie-anoc
38*8300438dSOdelu Kukatla      - qcom,eliza-system-noc
39*8300438dSOdelu Kukatla
40*8300438dSOdelu Kukatla  reg:
41*8300438dSOdelu Kukatla    maxItems: 1
42*8300438dSOdelu Kukatla
43*8300438dSOdelu Kukatla  clocks:
44*8300438dSOdelu Kukatla    minItems: 1
45*8300438dSOdelu Kukatla    maxItems: 2
46*8300438dSOdelu Kukatla
47*8300438dSOdelu Kukatlarequired:
48*8300438dSOdelu Kukatla  - compatible
49*8300438dSOdelu Kukatla
50*8300438dSOdelu KukatlaallOf:
51*8300438dSOdelu Kukatla  - $ref: qcom,rpmh-common.yaml#
52*8300438dSOdelu Kukatla  - if:
53*8300438dSOdelu Kukatla      properties:
54*8300438dSOdelu Kukatla        compatible:
55*8300438dSOdelu Kukatla          contains:
56*8300438dSOdelu Kukatla            enum:
57*8300438dSOdelu Kukatla              - qcom,eliza-clk-virt
58*8300438dSOdelu Kukatla              - qcom,eliza-mc-virt
59*8300438dSOdelu Kukatla    then:
60*8300438dSOdelu Kukatla      properties:
61*8300438dSOdelu Kukatla        reg: false
62*8300438dSOdelu Kukatla    else:
63*8300438dSOdelu Kukatla      required:
64*8300438dSOdelu Kukatla        - reg
65*8300438dSOdelu Kukatla
66*8300438dSOdelu Kukatla  - if:
67*8300438dSOdelu Kukatla      properties:
68*8300438dSOdelu Kukatla        compatible:
69*8300438dSOdelu Kukatla          contains:
70*8300438dSOdelu Kukatla            enum:
71*8300438dSOdelu Kukatla              - qcom,eliza-aggre1-noc
72*8300438dSOdelu Kukatla    then:
73*8300438dSOdelu Kukatla      properties:
74*8300438dSOdelu Kukatla        clocks:
75*8300438dSOdelu Kukatla          items:
76*8300438dSOdelu Kukatla            - description: aggre UFS PHY AXI clock
77*8300438dSOdelu Kukatla            - description: aggre USB3 PRIM AXI clock
78*8300438dSOdelu Kukatla
79*8300438dSOdelu Kukatla  - if:
80*8300438dSOdelu Kukatla      properties:
81*8300438dSOdelu Kukatla        compatible:
82*8300438dSOdelu Kukatla          contains:
83*8300438dSOdelu Kukatla            enum:
84*8300438dSOdelu Kukatla              - qcom,eliza-aggre2-noc
85*8300438dSOdelu Kukatla    then:
86*8300438dSOdelu Kukatla      properties:
87*8300438dSOdelu Kukatla        clocks:
88*8300438dSOdelu Kukatla          items:
89*8300438dSOdelu Kukatla            - description: RPMH CC IPA clock
90*8300438dSOdelu Kukatla
91*8300438dSOdelu Kukatla  - if:
92*8300438dSOdelu Kukatla      properties:
93*8300438dSOdelu Kukatla        compatible:
94*8300438dSOdelu Kukatla          contains:
95*8300438dSOdelu Kukatla            enum:
96*8300438dSOdelu Kukatla              - qcom,eliza-pcie-anoc
97*8300438dSOdelu Kukatla    then:
98*8300438dSOdelu Kukatla      properties:
99*8300438dSOdelu Kukatla        clocks:
100*8300438dSOdelu Kukatla          items:
101*8300438dSOdelu Kukatla            - description: aggre-NOC PCIe AXI clock
102*8300438dSOdelu Kukatla            - description: cfg-NOC PCIe a-NOC AHB clock
103*8300438dSOdelu Kukatla
104*8300438dSOdelu Kukatla  - if:
105*8300438dSOdelu Kukatla      properties:
106*8300438dSOdelu Kukatla        compatible:
107*8300438dSOdelu Kukatla          contains:
108*8300438dSOdelu Kukatla            enum:
109*8300438dSOdelu Kukatla              - qcom,eliza-aggre1-noc
110*8300438dSOdelu Kukatla              - qcom,eliza-aggre2-noc
111*8300438dSOdelu Kukatla              - qcom,eliza-pcie-anoc
112*8300438dSOdelu Kukatla    then:
113*8300438dSOdelu Kukatla      required:
114*8300438dSOdelu Kukatla        - clocks
115*8300438dSOdelu Kukatla    else:
116*8300438dSOdelu Kukatla      properties:
117*8300438dSOdelu Kukatla        clocks: false
118*8300438dSOdelu Kukatla
119*8300438dSOdelu KukatlaunevaluatedProperties: false
120*8300438dSOdelu Kukatla
121*8300438dSOdelu Kukatlaexamples:
122*8300438dSOdelu Kukatla  - |
123*8300438dSOdelu Kukatla    gem_noc: interconnect@24100000 {
124*8300438dSOdelu Kukatla        compatible = "qcom,eliza-gem-noc";
125*8300438dSOdelu Kukatla        reg = <0x24100000 0x163080>;
126*8300438dSOdelu Kukatla        #interconnect-cells = <2>;
127*8300438dSOdelu Kukatla        qcom,bcm-voters = <&apps_bcm_voter>;
128*8300438dSOdelu Kukatla    };
129*8300438dSOdelu Kukatla
130*8300438dSOdelu Kukatla    mc_virt: interconnect-2 {
131*8300438dSOdelu Kukatla        compatible = "qcom,eliza-mc-virt";
132*8300438dSOdelu Kukatla        #interconnect-cells = <2>;
133*8300438dSOdelu Kukatla        qcom,bcm-voters = <&apps_bcm_voter>;
134*8300438dSOdelu Kukatla    };
135*8300438dSOdelu Kukatla
136*8300438dSOdelu Kukatla    aggre1_noc: interconnect@16e0000 {
137*8300438dSOdelu Kukatla        compatible = "qcom,eliza-aggre1-noc";
138*8300438dSOdelu Kukatla        reg = <0x16e0000 0x16400>;
139*8300438dSOdelu Kukatla        #interconnect-cells = <2>;
140*8300438dSOdelu Kukatla        clocks = <&gcc_phy_axi_clk>, <&gcc_prim_axi_clk>;
141*8300438dSOdelu Kukatla        qcom,bcm-voters = <&apps_bcm_voter>;
142*8300438dSOdelu Kukatla    };
143