Merge tag 'mips_5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / interconnect / qcom,rpm.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/interconnect/qcom,rpm.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm RPM Network-On-Chip Interconnect
8
9 maintainers:
10   - Georgi Djakov <georgi.djakov@linaro.org>
11
12 description: |
13   RPM interconnect providers support system bandwidth requirements through
14   RPM processor. The provider is able to communicate with the RPM through
15   the RPM shared memory device.
16
17 properties:
18   reg:
19     maxItems: 1
20
21   compatible:
22     enum:
23       - qcom,msm8916-bimc
24       - qcom,msm8916-pcnoc
25       - qcom,msm8916-snoc
26       - qcom,msm8939-bimc
27       - qcom,msm8939-pcnoc
28       - qcom,msm8939-snoc
29       - qcom,msm8939-snoc-mm
30       - qcom,qcs404-bimc
31       - qcom,qcs404-pcnoc
32       - qcom,qcs404-snoc
33
34   '#interconnect-cells':
35     const: 1
36
37   clock-names:
38     items:
39       - const: bus
40       - const: bus_a
41
42   clocks:
43     items:
44       - description: Bus Clock
45       - description: Bus A Clock
46
47 required:
48   - compatible
49   - reg
50   - '#interconnect-cells'
51   - clock-names
52   - clocks
53
54 additionalProperties: false
55
56 examples:
57   - |
58       #include <dt-bindings/clock/qcom,rpmcc.h>
59
60       bimc: interconnect@400000 {
61               compatible = "qcom,msm8916-bimc";
62               reg = <0x00400000 0x62000>;
63               #interconnect-cells = <1>;
64               clock-names = "bus", "bus_a";
65               clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
66                        <&rpmcc RPM_SMD_BIMC_A_CLK>;
67       };
68
69       pcnoc: interconnect@500000 {
70               compatible = "qcom,msm8916-pcnoc";
71               reg = <0x00500000 0x11000>;
72               #interconnect-cells = <1>;
73               clock-names = "bus", "bus_a";
74               clocks = <&rpmcc RPM_SMD_PCNOC_CLK>,
75                        <&rpmcc RPM_SMD_PCNOC_A_CLK>;
76       };
77
78       snoc: interconnect@580000 {
79               compatible = "qcom,msm8916-snoc";
80               reg = <0x00580000 0x14000>;
81               #interconnect-cells = <1>;
82               clock-names = "bus", "bus_a";
83               clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
84                        <&rpmcc RPM_SMD_SNOC_A_CLK>;
85       };