lkml.org 
[lkml]   [2023]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v1 33/43] dt-bindings: gpio: Add Cirrus EP93xx
    Date
    Add YAML bindings for ep93xx SoC gpio controller.

    Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
    ---
    .../devicetree/bindings/gpio/gpio-ep9301.yaml | 154 ++++++++++++++++++
    1 file changed, 154 insertions(+)
    create mode 100644 Documentation/devicetree/bindings/gpio/gpio-ep9301.yaml

    diff --git a/Documentation/devicetree/bindings/gpio/gpio-ep9301.yaml b/Documentation/devicetree/bindings/gpio/gpio-ep9301.yaml
    new file mode 100644
    index 000000000000..daadfb4926c3
    --- /dev/null
    +++ b/Documentation/devicetree/bindings/gpio/gpio-ep9301.yaml
    @@ -0,0 +1,154 @@
    +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    +%YAML 1.2
    +---
    +$id: http://devicetree.org/schemas/gpio/gpio-ep9301.yaml#
    +$schema: http://devicetree.org/meta-schemas/core.yaml#
    +
    +title: EP93xx GPIO controller
    +
    +maintainers:
    + - Linus Walleij <linus.walleij@linaro.org>
    + - Bartosz Golaszewski <brgl@bgdev.pl>
    + - Nikita Shubin <nikita.shubin@maquefel.me>
    +
    +properties:
    + compatible:
    + oneOf:
    + - const: cirrus,ep9301-gpio
    + - items:
    + - enum:
    + - cirrus,ep9302-gpio
    + - cirrus,ep9307-gpio
    + - cirrus,ep9312-gpio
    + - cirrus,ep9315-gpio
    + - const: cirrus,ep9301-gpio
    +
    + reg:
    + minItems: 2
    + items:
    + - description: data register
    + - description: direction register
    + - description: interrupt registers base
    +
    + reg-names:
    + minItems: 2
    + items:
    + - const: data
    + - const: dir
    + - const: intr
    +
    + gpio-controller: true
    +
    + gpio-ranges: true
    +
    + "#gpio-cells":
    + const: 2
    +
    + interrupt-controller: true
    +
    + "#interrupt-cells":
    + const: 2
    +
    + interrupts:
    + oneOf:
    + - maxItems: 1
    + - description: port F has dedicated irq line for each gpio line
    + maxItems: 8
    +
    +required:
    + - compatible
    + - reg
    + - gpio-controller
    + - "#gpio-cells"
    +
    +additionalProperties: false
    +
    +examples:
    + - |
    + gpio@80840000 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840000 0x04>,
    + <0x80840010 0x04>,
    + <0x80840090 0x1c>;
    + reg-names = "data", "dir", "intr";
    + gpio-controller;
    + #gpio-cells = <2>;
    + interrupt-controller;
    + interrupt-parent = <&vic1>;
    + interrupts = <27>;
    + };
    +
    + gpio@80840004 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840004 0x04>,
    + <0x80840014 0x04>,
    + <0x808400ac 0x1c>;
    + reg-names = "data", "dir", "intr";
    + gpio-controller;
    + #gpio-cells = <2>;
    + interrupt-controller;
    + interrupt-parent = <&vic1>;
    + interrupts = <27>;
    + };
    +
    + gpio@80840008 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840008 0x04>,
    + <0x80840018 0x04>;
    + reg-names = "data", "dir";
    + gpio-controller;
    + #gpio-cells = <2>;
    + };
    +
    + gpio@8084000c {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x8084000c 0x04>,
    + <0x8084001c 0x04>;
    + reg-names = "data", "dir";
    + gpio-controller;
    + #gpio-cells = <2>;
    + };
    +
    + gpio@80840020 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840020 0x04>,
    + <0x80840024 0x04>;
    + reg-names = "data", "dir";
    + gpio-controller;
    + #gpio-cells = <2>;
    + };
    +
    + gpio@80840030 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840030 0x04>,
    + <0x80840034 0x04>,
    + <0x8084004c 0x1c>;
    + reg-names = "data", "dir", "intr";
    + gpio-controller;
    + #gpio-cells = <2>;
    + interrupt-controller;
    + interrupts-extended = <&vic0 19>, <&vic0 20>,
    + <&vic0 21>, <&vic0 22>,
    + <&vic1 15>, <&vic1 16>,
    + <&vic1 17>, <&vic1 18>;
    + };
    +
    + gpio@80840038 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840038 0x04>,
    + <0x8084003c 0x04>;
    + reg-names = "data", "dir";
    + gpio-controller;
    + #gpio-cells = <2>;
    + };
    +
    + gpio@80840040 {
    + compatible = "cirrus,ep9301-gpio";
    + reg = <0x80840040 0x04>,
    + <0x80840044 0x04>;
    + reg-names = "data", "dir";
    + gpio-controller;
    + #gpio-cells = <2>;
    + };
    +
    +...
    --
    2.37.4
    \
     
     \ /
      Last update: 2023-06-01 07:48    [W:4.275 / U:0.516 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site