123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- From a362c0ce64866939c3daa17c76943cfed555b065 Mon Sep 17 00:00:00 2001
- From: Sander Vanheule <[email protected]>
- Date: Tue, 30 Mar 2021 19:48:42 +0200
- Subject: dt-bindings: gpio: Binding for Realtek Otto GPIO
- Add a binding description for Realtek's GPIO controller found on several
- of their MIPS-based SoCs (codenamed Otto), such as the RTL838x and
- RTL839x series of switch SoCs.
- A fallback binding 'realtek,otto-gpio' is provided for cases where the
- actual port ordering is not known yet, and enabling the interrupt
- controller may result in uncaught interrupts.
- Signed-off-by: Sander Vanheule <[email protected]>
- Reviewed-by: Linus Walleij <[email protected]>
- Reviewed-by: Rob Herring <[email protected]>
- Signed-off-by: Bartosz Golaszewski <[email protected]>
- ---
- .../bindings/gpio/realtek,otto-gpio.yaml | 78 ++++++++++++++++++++++
- 1 file changed, 78 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
- --- /dev/null
- +++ b/Documentation/devicetree/bindings/gpio/realtek,otto-gpio.yaml
- @@ -0,0 +1,78 @@
- +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
- +%YAML 1.2
- +---
- +$id: http://devicetree.org/schemas/gpio/realtek,otto-gpio.yaml#
- +$schema: http://devicetree.org/meta-schemas/core.yaml#
- +
- +title: Realtek Otto GPIO controller
- +
- +maintainers:
- + - Sander Vanheule <[email protected]>
- + - Bert Vermeulen <[email protected]>
- +
- +description: |
- + Realtek's GPIO controller on their MIPS switch SoCs (Otto platform) consists
- + of two banks of 32 GPIOs. These GPIOs can generate edge-triggered interrupts.
- + Each bank's interrupts are cascased into one interrupt line on the parent
- + interrupt controller, if provided.
- + This binding allows defining a single bank in the devicetree. The interrupt
- + controller is not supported on the fallback compatible name, which only
- + allows for GPIO port use.
- +
- +properties:
- + $nodename:
- + pattern: "^gpio@[0-9a-f]+$"
- +
- + compatible:
- + items:
- + - enum:
- + - realtek,rtl8380-gpio
- + - realtek,rtl8390-gpio
- + - const: realtek,otto-gpio
- +
- + reg:
- + maxItems: 1
- +
- + "#gpio-cells":
- + const: 2
- +
- + gpio-controller: true
- +
- + ngpios:
- + minimum: 1
- + maximum: 32
- +
- + interrupt-controller: true
- +
- + "#interrupt-cells":
- + const: 2
- +
- + interrupts:
- + maxItems: 1
- +
- +required:
- + - compatible
- + - reg
- + - "#gpio-cells"
- + - gpio-controller
- +
- +additionalProperties: false
- +
- +dependencies:
- + interrupt-controller: [ interrupts ]
- +
- +examples:
- + - |
- + gpio@3500 {
- + compatible = "realtek,rtl8380-gpio", "realtek,otto-gpio";
- + reg = <0x3500 0x1c>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + ngpios = <24>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + interrupt-parent = <&rtlintc>;
- + interrupts = <23>;
- + };
- +
- +...
|