xref: /linux/Documentation/devicetree/bindings/interconnect/qcom,msm8974.yaml (revision cb4eb6771c0f8fd1c52a8f6fdec7762fb087380a)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/interconnect/qcom,msm8974.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm MSM8974 Network-On-Chip Interconnect
8
9maintainers:
10  - Brian Masney <masneyb@onstation.org>
11
12description: |
13  The Qualcomm MSM8974 interconnect providers support setting system
14  bandwidth requirements between various network-on-chip fabrics.
15
16properties:
17  reg:
18    maxItems: 1
19
20  compatible:
21    enum:
22      - qcom,msm8974-bimc
23      - qcom,msm8974-cnoc
24      - qcom,msm8974-mmssnoc
25      - qcom,msm8974-ocmemnoc
26      - qcom,msm8974-pnoc
27      - qcom,msm8974-snoc
28
29  clock-names:
30    items:
31      - const: bus
32
33  clocks:
34    items:
35      - description: Bus Clock
36
37required:
38  - compatible
39  - reg
40
41unevaluatedProperties: false
42
43allOf:
44  - $ref: qcom,rpm-common.yaml#
45  - if:
46      properties:
47        compatible:
48          const: qcom,msm8974-mmssnoc
49    then:
50      required:
51        - clocks
52        - clock-names
53    else:
54      properties:
55        clocks: false
56        clock-names: false
57
58examples:
59  - |
60    #include <dt-bindings/clock/qcom,rpmcc.h>
61
62    interconnect@fc380000 {
63        reg = <0xfc380000 0x6a000>;
64        compatible = "qcom,msm8974-bimc";
65        #interconnect-cells = <1>;
66    };
67