xref: /linux/Documentation/devicetree/bindings/interconnect/qcom,glymur-rpmh.yaml (revision cb4eb6771c0f8fd1c52a8f6fdec7762fb087380a)
17fdc1d1bSRaviteja Laggyshetty# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
27fdc1d1bSRaviteja Laggyshetty%YAML 1.2
37fdc1d1bSRaviteja Laggyshetty---
47fdc1d1bSRaviteja Laggyshetty$id: http://devicetree.org/schemas/interconnect/qcom,glymur-rpmh.yaml#
57fdc1d1bSRaviteja Laggyshetty$schema: http://devicetree.org/meta-schemas/core.yaml#
67fdc1d1bSRaviteja Laggyshetty
7*43cb0a21SRaviteja Laggyshettytitle: Qualcomm RPMh Network-On-Chip Interconnect on Glymur and Mahua SoCs
87fdc1d1bSRaviteja Laggyshetty
97fdc1d1bSRaviteja Laggyshettymaintainers:
107fdc1d1bSRaviteja Laggyshetty  - Raviteja Laggyshetty <raviteja.laggyshetty@oss.qualcomm.com>
117fdc1d1bSRaviteja Laggyshetty
127fdc1d1bSRaviteja Laggyshettydescription: |
137fdc1d1bSRaviteja Laggyshetty  RPMh interconnect providers support system bandwidth requirements through
147fdc1d1bSRaviteja Laggyshetty  RPMh hardware accelerators known as Bus Clock Manager (BCM). The provider is
157fdc1d1bSRaviteja Laggyshetty  able to communicate with the BCM through the Resource State Coordinator (RSC)
167fdc1d1bSRaviteja Laggyshetty  associated with each execution environment. Provider nodes must point to at
177fdc1d1bSRaviteja Laggyshetty  least one RPMh device child node pertaining to their RSC and each provider
187fdc1d1bSRaviteja Laggyshetty  can map to multiple RPMh resources.
197fdc1d1bSRaviteja Laggyshetty
207fdc1d1bSRaviteja Laggyshetty  See also: include/dt-bindings/interconnect/qcom,glymur-rpmh.h
217fdc1d1bSRaviteja Laggyshetty
227fdc1d1bSRaviteja Laggyshettyproperties:
237fdc1d1bSRaviteja Laggyshetty  compatible:
24*43cb0a21SRaviteja Laggyshetty    oneOf:
25*43cb0a21SRaviteja Laggyshetty      - items:
26*43cb0a21SRaviteja Laggyshetty          - enum:
27*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-aggre1-noc
28*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-aggre1-noc
29*43cb0a21SRaviteja Laggyshetty      - items:
30*43cb0a21SRaviteja Laggyshetty          - enum:
31*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-aggre2-noc
32*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-aggre2-noc
33*43cb0a21SRaviteja Laggyshetty      - items:
34*43cb0a21SRaviteja Laggyshetty          - enum:
35*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-aggre3-noc
36*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-aggre3-noc
37*43cb0a21SRaviteja Laggyshetty      - items:
38*43cb0a21SRaviteja Laggyshetty          - enum:
39*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-aggre4-noc
40*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-aggre4-noc
41*43cb0a21SRaviteja Laggyshetty      - items:
42*43cb0a21SRaviteja Laggyshetty          - enum:
43*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-clk-virt
44*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-clk-virt
45*43cb0a21SRaviteja Laggyshetty      - items:
46*43cb0a21SRaviteja Laggyshetty          - enum:
47*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-cnoc-main
48*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-cnoc-main
49*43cb0a21SRaviteja Laggyshetty      - items:
50*43cb0a21SRaviteja Laggyshetty          - enum:
51*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-lpass-ag-noc
52*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-lpass-ag-noc
53*43cb0a21SRaviteja Laggyshetty      - items:
54*43cb0a21SRaviteja Laggyshetty          - enum:
55*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-lpass-lpiaon-noc
56*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-lpass-lpiaon-noc
57*43cb0a21SRaviteja Laggyshetty      - items:
58*43cb0a21SRaviteja Laggyshetty          - enum:
59*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-lpass-lpicx-noc
60*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-lpass-lpicx-noc
61*43cb0a21SRaviteja Laggyshetty      - items:
62*43cb0a21SRaviteja Laggyshetty          - enum:
63*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-mmss-noc
64*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-mmss-noc
65*43cb0a21SRaviteja Laggyshetty      - items:
66*43cb0a21SRaviteja Laggyshetty          - enum:
67*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-nsinoc
68*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-nsinoc
69*43cb0a21SRaviteja Laggyshetty      - items:
70*43cb0a21SRaviteja Laggyshetty          - enum:
71*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-nsp-noc
72*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-nsp-noc
73*43cb0a21SRaviteja Laggyshetty      - items:
74*43cb0a21SRaviteja Laggyshetty          - enum:
75*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-oobm-ss-noc
76*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-oobm-ss-noc
77*43cb0a21SRaviteja Laggyshetty      - items:
78*43cb0a21SRaviteja Laggyshetty          - enum:
79*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-pcie-east-anoc
80*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-pcie-east-anoc
81*43cb0a21SRaviteja Laggyshetty      - items:
82*43cb0a21SRaviteja Laggyshetty          - enum:
83*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-pcie-east-slv-noc
84*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-pcie-east-slv-noc
85*43cb0a21SRaviteja Laggyshetty      - items:
86*43cb0a21SRaviteja Laggyshetty          - enum:
87*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-system-noc
88*43cb0a21SRaviteja Laggyshetty          - const: qcom,glymur-system-noc
89*43cb0a21SRaviteja Laggyshetty      - enum:
907fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-aggre1-noc
917fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-aggre2-noc
927fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-aggre3-noc
937fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-aggre4-noc
947fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-clk-virt
957fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-cnoc-cfg
967fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-cnoc-main
977fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-hscnoc
987fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-lpass-ag-noc
997fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-lpass-lpiaon-noc
1007fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-lpass-lpicx-noc
1017fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-mc-virt
1027fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-mmss-noc
1037fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-nsinoc
1047fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-nsp-noc
1057fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-oobm-ss-noc
1067fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-pcie-east-anoc
1077fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-pcie-east-slv-noc
1087fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-pcie-west-anoc
1097fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-pcie-west-slv-noc
1107fdc1d1bSRaviteja Laggyshetty          - qcom,glymur-system-noc
111*43cb0a21SRaviteja Laggyshetty          - qcom,mahua-cnoc-cfg
112*43cb0a21SRaviteja Laggyshetty          - qcom,mahua-hscnoc
113*43cb0a21SRaviteja Laggyshetty          - qcom,mahua-mc-virt
114*43cb0a21SRaviteja Laggyshetty          - qcom,mahua-pcie-west-anoc
115*43cb0a21SRaviteja Laggyshetty          - qcom,mahua-pcie-west-slv-noc
1167fdc1d1bSRaviteja Laggyshetty
1177fdc1d1bSRaviteja Laggyshetty  reg:
1187fdc1d1bSRaviteja Laggyshetty    maxItems: 1
1197fdc1d1bSRaviteja Laggyshetty
1207fdc1d1bSRaviteja Laggyshetty  clocks:
1217fdc1d1bSRaviteja Laggyshetty    minItems: 1
1227fdc1d1bSRaviteja Laggyshetty    maxItems: 4
1237fdc1d1bSRaviteja Laggyshetty
1247fdc1d1bSRaviteja Laggyshettyrequired:
1257fdc1d1bSRaviteja Laggyshetty  - compatible
1267fdc1d1bSRaviteja Laggyshetty
1277fdc1d1bSRaviteja LaggyshettyallOf:
1287fdc1d1bSRaviteja Laggyshetty  - $ref: qcom,rpmh-common.yaml#
1297fdc1d1bSRaviteja Laggyshetty  - if:
1307fdc1d1bSRaviteja Laggyshetty      properties:
1317fdc1d1bSRaviteja Laggyshetty        compatible:
1327fdc1d1bSRaviteja Laggyshetty          contains:
1337fdc1d1bSRaviteja Laggyshetty            enum:
1347fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-clk-virt
1357fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-mc-virt
136*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-mc-virt
1377fdc1d1bSRaviteja Laggyshetty    then:
1387fdc1d1bSRaviteja Laggyshetty      properties:
1397fdc1d1bSRaviteja Laggyshetty        reg: false
1407fdc1d1bSRaviteja Laggyshetty    else:
1417fdc1d1bSRaviteja Laggyshetty      required:
1427fdc1d1bSRaviteja Laggyshetty        - reg
1437fdc1d1bSRaviteja Laggyshetty
1447fdc1d1bSRaviteja Laggyshetty  - if:
1457fdc1d1bSRaviteja Laggyshetty      properties:
1467fdc1d1bSRaviteja Laggyshetty        compatible:
1477fdc1d1bSRaviteja Laggyshetty          contains:
1487fdc1d1bSRaviteja Laggyshetty            enum:
1497fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-pcie-west-anoc
1507fdc1d1bSRaviteja Laggyshetty    then:
1517fdc1d1bSRaviteja Laggyshetty      properties:
1527fdc1d1bSRaviteja Laggyshetty        clocks:
1537fdc1d1bSRaviteja Laggyshetty          items:
1547fdc1d1bSRaviteja Laggyshetty            - description: aggre PCIE_3A WEST AXI clock
1557fdc1d1bSRaviteja Laggyshetty            - description: aggre PCIE_3B WEST AXI clock
1567fdc1d1bSRaviteja Laggyshetty            - description: aggre PCIE_4 WEST AXI clock
1577fdc1d1bSRaviteja Laggyshetty            - description: aggre PCIE_6 WEST AXI clock
1587fdc1d1bSRaviteja Laggyshetty
1597fdc1d1bSRaviteja Laggyshetty  - if:
1607fdc1d1bSRaviteja Laggyshetty      properties:
1617fdc1d1bSRaviteja Laggyshetty        compatible:
1627fdc1d1bSRaviteja Laggyshetty          contains:
1637fdc1d1bSRaviteja Laggyshetty            enum:
164*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-pcie-west-anoc
165*43cb0a21SRaviteja Laggyshetty    then:
166*43cb0a21SRaviteja Laggyshetty      properties:
167*43cb0a21SRaviteja Laggyshetty        clocks:
168*43cb0a21SRaviteja Laggyshetty          items:
169*43cb0a21SRaviteja Laggyshetty            - description: aggre PCIE_3B WEST AXI clock
170*43cb0a21SRaviteja Laggyshetty            - description: aggre PCIE_4 WEST AXI clock
171*43cb0a21SRaviteja Laggyshetty            - description: aggre PCIE_6 WEST AXI clock
172*43cb0a21SRaviteja Laggyshetty
173*43cb0a21SRaviteja Laggyshetty  - if:
174*43cb0a21SRaviteja Laggyshetty      properties:
175*43cb0a21SRaviteja Laggyshetty        compatible:
176*43cb0a21SRaviteja Laggyshetty          contains:
177*43cb0a21SRaviteja Laggyshetty            enum:
1787fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-pcie-east-anoc
1797fdc1d1bSRaviteja Laggyshetty    then:
1807fdc1d1bSRaviteja Laggyshetty      properties:
1817fdc1d1bSRaviteja Laggyshetty        clocks:
1827fdc1d1bSRaviteja Laggyshetty          items:
1837fdc1d1bSRaviteja Laggyshetty            - description: aggre PCIE_5 EAST AXI clock
1847fdc1d1bSRaviteja Laggyshetty
1857fdc1d1bSRaviteja Laggyshetty  - if:
1867fdc1d1bSRaviteja Laggyshetty      properties:
1877fdc1d1bSRaviteja Laggyshetty        compatible:
1887fdc1d1bSRaviteja Laggyshetty          contains:
1897fdc1d1bSRaviteja Laggyshetty            enum:
1907fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-aggre2-noc
1917fdc1d1bSRaviteja Laggyshetty    then:
1927fdc1d1bSRaviteja Laggyshetty      properties:
1937fdc1d1bSRaviteja Laggyshetty        clocks:
1947fdc1d1bSRaviteja Laggyshetty          items:
1957fdc1d1bSRaviteja Laggyshetty            - description: aggre USB3 TERT AXI clock
1967fdc1d1bSRaviteja Laggyshetty            - description: aggre USB4_2 AXI clock
1977fdc1d1bSRaviteja Laggyshetty            - description: aggre UFS PHY AXI clock
1987fdc1d1bSRaviteja Laggyshetty
1997fdc1d1bSRaviteja Laggyshetty  - if:
2007fdc1d1bSRaviteja Laggyshetty      properties:
2017fdc1d1bSRaviteja Laggyshetty        compatible:
2027fdc1d1bSRaviteja Laggyshetty          contains:
2037fdc1d1bSRaviteja Laggyshetty            enum:
2047fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-aggre4-noc
2057fdc1d1bSRaviteja Laggyshetty    then:
2067fdc1d1bSRaviteja Laggyshetty      properties:
2077fdc1d1bSRaviteja Laggyshetty        clocks:
2087fdc1d1bSRaviteja Laggyshetty          items:
2097fdc1d1bSRaviteja Laggyshetty            - description: aggre USB3 PRIM AXI clock
2107fdc1d1bSRaviteja Laggyshetty            - description: aggre USB3 SEC AXI clock
2117fdc1d1bSRaviteja Laggyshetty            - description: aggre USB4_0 AXI clock
2127fdc1d1bSRaviteja Laggyshetty            - description: aggre USB4_1 AXI clock
2137fdc1d1bSRaviteja Laggyshetty
2147fdc1d1bSRaviteja Laggyshetty  - if:
2157fdc1d1bSRaviteja Laggyshetty      properties:
2167fdc1d1bSRaviteja Laggyshetty        compatible:
2177fdc1d1bSRaviteja Laggyshetty          contains:
2187fdc1d1bSRaviteja Laggyshetty            enum:
2197fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-aggre2-noc
2207fdc1d1bSRaviteja Laggyshetty              - qcom,glymur-aggre4-noc
221*43cb0a21SRaviteja Laggyshetty              - qcom,glymur-pcie-east-anoc
222*43cb0a21SRaviteja Laggyshetty              - qcom,glymur-pcie-west-anoc
223*43cb0a21SRaviteja Laggyshetty              - qcom,mahua-pcie-west-anoc
2247fdc1d1bSRaviteja Laggyshetty    then:
2257fdc1d1bSRaviteja Laggyshetty      required:
2267fdc1d1bSRaviteja Laggyshetty        - clocks
2277fdc1d1bSRaviteja Laggyshetty    else:
2287fdc1d1bSRaviteja Laggyshetty      properties:
2297fdc1d1bSRaviteja Laggyshetty        clocks: false
2307fdc1d1bSRaviteja Laggyshetty
2317fdc1d1bSRaviteja LaggyshettyunevaluatedProperties: false
2327fdc1d1bSRaviteja Laggyshetty
2337fdc1d1bSRaviteja Laggyshettyexamples:
2347fdc1d1bSRaviteja Laggyshetty  - |
2357fdc1d1bSRaviteja Laggyshetty    #include <dt-bindings/clock/qcom,glymur-gcc.h>
2367fdc1d1bSRaviteja Laggyshetty    clk_virt: interconnect-0 {
2377fdc1d1bSRaviteja Laggyshetty      compatible = "qcom,glymur-clk-virt";
2387fdc1d1bSRaviteja Laggyshetty      #interconnect-cells = <2>;
2397fdc1d1bSRaviteja Laggyshetty      qcom,bcm-voters = <&apps_bcm_voter>;
2407fdc1d1bSRaviteja Laggyshetty    };
2417fdc1d1bSRaviteja Laggyshetty
2427fdc1d1bSRaviteja Laggyshetty    aggre1_noc: interconnect@16e0000 {
2437fdc1d1bSRaviteja Laggyshetty      compatible = "qcom,glymur-aggre1-noc";
2447fdc1d1bSRaviteja Laggyshetty      reg = <0x016e0000 0x14400>;
2457fdc1d1bSRaviteja Laggyshetty      #interconnect-cells = <2>;
2467fdc1d1bSRaviteja Laggyshetty      qcom,bcm-voters = <&apps_bcm_voter>;
2477fdc1d1bSRaviteja Laggyshetty    };
2487fdc1d1bSRaviteja Laggyshetty
2497fdc1d1bSRaviteja Laggyshetty    aggre4_noc: interconnect@1740000 {
2507fdc1d1bSRaviteja Laggyshetty      compatible = "qcom,glymur-aggre4-noc";
2517fdc1d1bSRaviteja Laggyshetty      reg = <0x01740000 0x14400>;
2527fdc1d1bSRaviteja Laggyshetty      #interconnect-cells = <2>;
2537fdc1d1bSRaviteja Laggyshetty      qcom,bcm-voters = <&apps_bcm_voter>;
2547fdc1d1bSRaviteja Laggyshetty      clocks = <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
2557fdc1d1bSRaviteja Laggyshetty               <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>,
2567fdc1d1bSRaviteja Laggyshetty               <&gcc GCC_AGGRE_USB4_0_AXI_CLK>,
2577fdc1d1bSRaviteja Laggyshetty               <&gcc GCC_AGGRE_USB4_1_AXI_CLK>;
2587fdc1d1bSRaviteja Laggyshetty    };
259