xref: /freebsd/sys/contrib/device-tree/Bindings/bus/palmbus.yaml (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/bus/palmbus.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ralink PalmBus
8
9maintainers:
10  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
11
12description: |
13  The ralink palmbus controller can be found in all ralink MIPS
14  SoCs. It provides an external bus for connecting multiple
15  external devices to the SoC.
16
17properties:
18  $nodename:
19    pattern: "^palmbus(@[0-9a-f]+)?$"
20
21  "#address-cells":
22    const: 1
23
24  "#size-cells":
25    const: 1
26
27  compatible:
28    const: palmbus
29
30  reg:
31    maxItems: 1
32
33  ranges: true
34
35patternProperties:
36  # All other properties should be child nodes with unit-address and 'reg'
37  "@[0-9a-f]+$":
38    type: object
39    additionalProperties: true
40    properties:
41      reg:
42        maxItems: 1
43
44    required:
45      - reg
46
47required:
48  - compatible
49  - reg
50  - "#address-cells"
51  - "#size-cells"
52  - ranges
53
54additionalProperties: false
55
56examples:
57  - |
58    #include <dt-bindings/interrupt-controller/mips-gic.h>
59    #include <dt-bindings/interrupt-controller/irq.h>
60    palmbus@1e000000 {
61        compatible = "palmbus";
62        reg = <0x1e000000 0x100000>;
63        #address-cells = <1>;
64        #size-cells = <1>;
65        ranges = <0x0 0x1e000000 0x0fffff>;
66
67        gpio@600 {
68            #gpio-cells = <2>;
69            #interrupt-cells = <2>;
70            compatible = "mediatek,mt7621-gpio";
71            gpio-controller;
72            gpio-ranges = <&pinctrl 0 0 95>;
73            interrupt-controller;
74            reg = <0x600 0x100>;
75            interrupt-parent = <&gic>;
76            interrupts = <GIC_SHARED 12 IRQ_TYPE_LEVEL_HIGH>;
77        };
78    };
79
80...
81