xref: /freebsd/sys/contrib/device-tree/Bindings/interconnect/qcom,msm8916.yaml (revision cfd6422a5217410fbd66f7a7a8a64d9d85e61229)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/interconnect/qcom,msm8916.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm MSM8916 Network-On-Chip interconnect
8
9maintainers:
10  - Georgi Djakov <georgi.djakov@linaro.org>
11
12description: |
13  The Qualcomm MSM8916 interconnect providers support adjusting the
14  bandwidth requirements between the various NoC fabrics.
15
16properties:
17  compatible:
18    enum:
19      - qcom,msm8916-bimc
20      - qcom,msm8916-pcnoc
21      - qcom,msm8916-snoc
22
23  reg:
24    maxItems: 1
25
26  '#interconnect-cells':
27    const: 1
28
29  clock-names:
30    items:
31      - const: bus
32      - const: bus_a
33
34  clocks:
35    items:
36      - description: Bus Clock
37      - description: Bus A Clock
38
39required:
40  - compatible
41  - reg
42  - '#interconnect-cells'
43  - clock-names
44  - clocks
45
46additionalProperties: false
47
48examples:
49  - |
50      #include <dt-bindings/clock/qcom,rpmcc.h>
51
52      bimc: interconnect@400000 {
53              compatible = "qcom,msm8916-bimc";
54              reg = <0x00400000 0x62000>;
55              #interconnect-cells = <1>;
56              clock-names = "bus", "bus_a";
57              clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
58                       <&rpmcc RPM_SMD_BIMC_A_CLK>;
59      };
60
61      pcnoc: interconnect@500000 {
62              compatible = "qcom,msm8916-pcnoc";
63              reg = <0x00500000 0x11000>;
64              #interconnect-cells = <1>;
65              clock-names = "bus", "bus_a";
66              clocks = <&rpmcc RPM_SMD_PCNOC_CLK>,
67                       <&rpmcc RPM_SMD_PCNOC_A_CLK>;
68      };
69
70      snoc: interconnect@580000 {
71              compatible = "qcom,msm8916-snoc";
72              reg = <0x00580000 0x14000>;
73              #interconnect-cells = <1>;
74              clock-names = "bus", "bus_a";
75              clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
76                       <&rpmcc RPM_SMD_SNOC_A_CLK>;
77      };
78