xref: /freebsd/sys/contrib/device-tree/Bindings/bus/palmbus.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
18cc087a1SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28cc087a1SEmmanuel Vadot%YAML 1.2
38cc087a1SEmmanuel Vadot---
48cc087a1SEmmanuel Vadot$id: http://devicetree.org/schemas/bus/palmbus.yaml#
58cc087a1SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68cc087a1SEmmanuel Vadot
77ef62cebSEmmanuel Vadottitle: Ralink PalmBus
88cc087a1SEmmanuel Vadot
98cc087a1SEmmanuel Vadotmaintainers:
108cc087a1SEmmanuel Vadot  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
118cc087a1SEmmanuel Vadot
128cc087a1SEmmanuel Vadotdescription: |
138cc087a1SEmmanuel Vadot  The ralink palmbus controller can be found in all ralink MIPS
148cc087a1SEmmanuel Vadot  SoCs. It provides an external bus for connecting multiple
158cc087a1SEmmanuel Vadot  external devices to the SoC.
168cc087a1SEmmanuel Vadot
178cc087a1SEmmanuel Vadotproperties:
188cc087a1SEmmanuel Vadot  $nodename:
198cc087a1SEmmanuel Vadot    pattern: "^palmbus(@[0-9a-f]+)?$"
208cc087a1SEmmanuel Vadot
218cc087a1SEmmanuel Vadot  "#address-cells":
228cc087a1SEmmanuel Vadot    const: 1
238cc087a1SEmmanuel Vadot
248cc087a1SEmmanuel Vadot  "#size-cells":
258cc087a1SEmmanuel Vadot    const: 1
268cc087a1SEmmanuel Vadot
278cc087a1SEmmanuel Vadot  compatible:
288cc087a1SEmmanuel Vadot    const: palmbus
298cc087a1SEmmanuel Vadot
308cc087a1SEmmanuel Vadot  reg:
318cc087a1SEmmanuel Vadot    maxItems: 1
328cc087a1SEmmanuel Vadot
338cc087a1SEmmanuel Vadot  ranges: true
348cc087a1SEmmanuel Vadot
358cc087a1SEmmanuel VadotpatternProperties:
368cc087a1SEmmanuel Vadot  # All other properties should be child nodes with unit-address and 'reg'
378cc087a1SEmmanuel Vadot  "@[0-9a-f]+$":
388cc087a1SEmmanuel Vadot    type: object
39*fac71e4eSEmmanuel Vadot    additionalProperties: true
408cc087a1SEmmanuel Vadot    properties:
418cc087a1SEmmanuel Vadot      reg:
428cc087a1SEmmanuel Vadot        maxItems: 1
438cc087a1SEmmanuel Vadot
448cc087a1SEmmanuel Vadot    required:
458cc087a1SEmmanuel Vadot      - reg
468cc087a1SEmmanuel Vadot
478cc087a1SEmmanuel Vadotrequired:
488cc087a1SEmmanuel Vadot  - compatible
498cc087a1SEmmanuel Vadot  - reg
508cc087a1SEmmanuel Vadot  - "#address-cells"
518cc087a1SEmmanuel Vadot  - "#size-cells"
528cc087a1SEmmanuel Vadot  - ranges
538cc087a1SEmmanuel Vadot
548cc087a1SEmmanuel VadotadditionalProperties: false
558cc087a1SEmmanuel Vadot
568cc087a1SEmmanuel Vadotexamples:
578cc087a1SEmmanuel Vadot  - |
588cc087a1SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/mips-gic.h>
598cc087a1SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
608cc087a1SEmmanuel Vadot    palmbus@1e000000 {
618cc087a1SEmmanuel Vadot        compatible = "palmbus";
628cc087a1SEmmanuel Vadot        reg = <0x1e000000 0x100000>;
638cc087a1SEmmanuel Vadot        #address-cells = <1>;
648cc087a1SEmmanuel Vadot        #size-cells = <1>;
658cc087a1SEmmanuel Vadot        ranges = <0x0 0x1e000000 0x0fffff>;
668cc087a1SEmmanuel Vadot
678cc087a1SEmmanuel Vadot        gpio@600 {
688cc087a1SEmmanuel Vadot            #gpio-cells = <2>;
698cc087a1SEmmanuel Vadot            #interrupt-cells = <2>;
708cc087a1SEmmanuel Vadot            compatible = "mediatek,mt7621-gpio";
718cc087a1SEmmanuel Vadot            gpio-controller;
728cc087a1SEmmanuel Vadot            gpio-ranges = <&pinctrl 0 0 95>;
738cc087a1SEmmanuel Vadot            interrupt-controller;
748cc087a1SEmmanuel Vadot            reg = <0x600 0x100>;
758cc087a1SEmmanuel Vadot            interrupt-parent = <&gic>;
768cc087a1SEmmanuel Vadot            interrupts = <GIC_SHARED 12 IRQ_TYPE_LEVEL_HIGH>;
778cc087a1SEmmanuel Vadot        };
788cc087a1SEmmanuel Vadot    };
798cc087a1SEmmanuel Vadot
808cc087a1SEmmanuel Vadot...
81