brintos

brintos / linux-shallow public Read only

0
0
Text · 3.2 KiB · cf11aa7 Raw
149 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/gpio/aspeed,ast2400-gpio.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Aspeed GPIO controller8 9maintainers:10  - Andrew Jeffery <andrew@codeconstruct.com.au>11 12properties:13  compatible:14    enum:15      - aspeed,ast2400-gpio16      - aspeed,ast2500-gpio17      - aspeed,ast2600-gpio18 19  reg:20    maxItems: 121 22  clocks:23    maxItems: 124    description: The clock to use for debounce timings25 26  gpio-controller: true27  gpio-line-names:28    minItems: 3629    maxItems: 23230 31  gpio-ranges: true32 33  "#gpio-cells":34    const: 235 36  interrupts:37    maxItems: 138 39  interrupt-controller: true40 41  "#interrupt-cells":42    const: 243 44  ngpios:45    minimum: 3646    maximum: 23247 48required:49  - compatible50  - reg51  - interrupts52  - interrupt-controller53  - "#interrupt-cells"54  - gpio-controller55  - "#gpio-cells"56 57allOf:58  - if:59      properties:60        compatible:61          contains:62            const: aspeed,ast2400-gpio63    then:64      properties:65        gpio-line-names:66          minItems: 22067          maxItems: 22068        ngpios:69          const: 22070  - if:71      properties:72        compatible:73          contains:74            const: aspeed,ast2500-gpio75    then:76      properties:77        gpio-line-names:78          minItems: 23279          maxItems: 23280        ngpios:81          const: 23282  - if:83      properties:84        compatible:85          contains:86            const: aspeed,ast2600-gpio87    then:88      properties:89        gpio-line-names:90          minItems: 3691          maxItems: 20892        ngpios:93          enum: [ 36, 208 ]94      required:95        - ngpios96 97additionalProperties: false98 99examples:100  - |101    gpio@1e780000 {102        compatible = "aspeed,ast2400-gpio";103        reg = <0x1e780000 0x1000>;104        interrupts = <20>;105        interrupt-controller;106        #interrupt-cells = <2>;107        gpio-controller;108        #gpio-cells = <2>;109    };110  - |111    gpio: gpio@1e780000 {112        compatible = "aspeed,ast2500-gpio";113        reg = <0x1e780000 0x200>;114        interrupts = <20>;115        interrupt-controller;116        #interrupt-cells = <2>;117        gpio-controller;118        #gpio-cells = <2>;119        gpio-ranges = <&pinctrl 0 0 232>;120    };121  - |122    #include <dt-bindings/clock/ast2600-clock.h>123    #include <dt-bindings/interrupt-controller/arm-gic.h>124    #include <dt-bindings/interrupt-controller/irq.h>125    gpio0: gpio@1e780000 {126        compatible = "aspeed,ast2600-gpio";127        reg = <0x1e780000 0x400>;128        clocks = <&syscon ASPEED_CLK_APB2>;129        interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;130        interrupt-controller;131        #interrupt-cells = <2>;132        #gpio-cells = <2>;133        gpio-controller;134        gpio-ranges = <&pinctrl 0 0 208>;135        ngpios = <208>;136    };137    gpio1: gpio@1e780800 {138        compatible = "aspeed,ast2600-gpio";139        reg = <0x1e780800 0x800>;140        clocks = <&syscon ASPEED_CLK_APB1>;141        interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;142        interrupt-controller;143        #interrupt-cells = <2>;144        gpio-controller;145        #gpio-cells = <2>;146        gpio-ranges = <&pinctrl 0 208 36>;147        ngpios = <36>;148    };149