162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/gpio/gpio-ep9301.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: EP93xx GPIO controller 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Linus Walleij <linus.walleij@linaro.org> 1162306a36Sopenharmony_ci - Bartosz Golaszewski <brgl@bgdev.pl> 1262306a36Sopenharmony_ci - Nikita Shubin <nikita.shubin@maquefel.me> 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciproperties: 1562306a36Sopenharmony_ci compatible: 1662306a36Sopenharmony_ci oneOf: 1762306a36Sopenharmony_ci - const: cirrus,ep9301-gpio 1862306a36Sopenharmony_ci - items: 1962306a36Sopenharmony_ci - enum: 2062306a36Sopenharmony_ci - cirrus,ep9302-gpio 2162306a36Sopenharmony_ci - cirrus,ep9307-gpio 2262306a36Sopenharmony_ci - cirrus,ep9312-gpio 2362306a36Sopenharmony_ci - cirrus,ep9315-gpio 2462306a36Sopenharmony_ci - const: cirrus,ep9301-gpio 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ci reg: 2762306a36Sopenharmony_ci minItems: 2 2862306a36Sopenharmony_ci items: 2962306a36Sopenharmony_ci - description: data register 3062306a36Sopenharmony_ci - description: direction register 3162306a36Sopenharmony_ci - description: interrupt registers base 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci reg-names: 3462306a36Sopenharmony_ci minItems: 2 3562306a36Sopenharmony_ci items: 3662306a36Sopenharmony_ci - const: data 3762306a36Sopenharmony_ci - const: dir 3862306a36Sopenharmony_ci - const: intr 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci gpio-controller: true 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci gpio-ranges: true 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci "#gpio-cells": 4562306a36Sopenharmony_ci const: 2 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci interrupt-controller: true 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci "#interrupt-cells": 5062306a36Sopenharmony_ci const: 2 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci interrupts: 5362306a36Sopenharmony_ci oneOf: 5462306a36Sopenharmony_ci - maxItems: 1 5562306a36Sopenharmony_ci - description: port F has dedicated irq line for each gpio line 5662306a36Sopenharmony_ci maxItems: 8 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_cirequired: 5962306a36Sopenharmony_ci - compatible 6062306a36Sopenharmony_ci - reg 6162306a36Sopenharmony_ci - gpio-controller 6262306a36Sopenharmony_ci - "#gpio-cells" 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ciadditionalProperties: false 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ciexamples: 6762306a36Sopenharmony_ci - | 6862306a36Sopenharmony_ci gpio@80840000 { 6962306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 7062306a36Sopenharmony_ci reg = <0x80840000 0x04>, 7162306a36Sopenharmony_ci <0x80840010 0x04>, 7262306a36Sopenharmony_ci <0x80840090 0x1c>; 7362306a36Sopenharmony_ci reg-names = "data", "dir", "intr"; 7462306a36Sopenharmony_ci gpio-controller; 7562306a36Sopenharmony_ci #gpio-cells = <2>; 7662306a36Sopenharmony_ci interrupt-controller; 7762306a36Sopenharmony_ci interrupt-parent = <&vic1>; 7862306a36Sopenharmony_ci interrupts = <27>; 7962306a36Sopenharmony_ci }; 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci gpio@80840004 { 8262306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 8362306a36Sopenharmony_ci reg = <0x80840004 0x04>, 8462306a36Sopenharmony_ci <0x80840014 0x04>, 8562306a36Sopenharmony_ci <0x808400ac 0x1c>; 8662306a36Sopenharmony_ci reg-names = "data", "dir", "intr"; 8762306a36Sopenharmony_ci gpio-controller; 8862306a36Sopenharmony_ci #gpio-cells = <2>; 8962306a36Sopenharmony_ci interrupt-controller; 9062306a36Sopenharmony_ci interrupt-parent = <&vic1>; 9162306a36Sopenharmony_ci interrupts = <27>; 9262306a36Sopenharmony_ci }; 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ci gpio@80840008 { 9562306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 9662306a36Sopenharmony_ci reg = <0x80840008 0x04>, 9762306a36Sopenharmony_ci <0x80840018 0x04>; 9862306a36Sopenharmony_ci reg-names = "data", "dir"; 9962306a36Sopenharmony_ci gpio-controller; 10062306a36Sopenharmony_ci #gpio-cells = <2>; 10162306a36Sopenharmony_ci }; 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci gpio@8084000c { 10462306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 10562306a36Sopenharmony_ci reg = <0x8084000c 0x04>, 10662306a36Sopenharmony_ci <0x8084001c 0x04>; 10762306a36Sopenharmony_ci reg-names = "data", "dir"; 10862306a36Sopenharmony_ci gpio-controller; 10962306a36Sopenharmony_ci #gpio-cells = <2>; 11062306a36Sopenharmony_ci }; 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ci gpio@80840020 { 11362306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 11462306a36Sopenharmony_ci reg = <0x80840020 0x04>, 11562306a36Sopenharmony_ci <0x80840024 0x04>; 11662306a36Sopenharmony_ci reg-names = "data", "dir"; 11762306a36Sopenharmony_ci gpio-controller; 11862306a36Sopenharmony_ci #gpio-cells = <2>; 11962306a36Sopenharmony_ci }; 12062306a36Sopenharmony_ci 12162306a36Sopenharmony_ci gpio@80840030 { 12262306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 12362306a36Sopenharmony_ci reg = <0x80840030 0x04>, 12462306a36Sopenharmony_ci <0x80840034 0x04>, 12562306a36Sopenharmony_ci <0x8084004c 0x1c>; 12662306a36Sopenharmony_ci reg-names = "data", "dir", "intr"; 12762306a36Sopenharmony_ci gpio-controller; 12862306a36Sopenharmony_ci #gpio-cells = <2>; 12962306a36Sopenharmony_ci interrupt-controller; 13062306a36Sopenharmony_ci interrupts-extended = <&vic0 19>, <&vic0 20>, 13162306a36Sopenharmony_ci <&vic0 21>, <&vic0 22>, 13262306a36Sopenharmony_ci <&vic1 15>, <&vic1 16>, 13362306a36Sopenharmony_ci <&vic1 17>, <&vic1 18>; 13462306a36Sopenharmony_ci }; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci gpio@80840038 { 13762306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 13862306a36Sopenharmony_ci reg = <0x80840038 0x04>, 13962306a36Sopenharmony_ci <0x8084003c 0x04>; 14062306a36Sopenharmony_ci reg-names = "data", "dir"; 14162306a36Sopenharmony_ci gpio-controller; 14262306a36Sopenharmony_ci #gpio-cells = <2>; 14362306a36Sopenharmony_ci }; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ci gpio@80840040 { 14662306a36Sopenharmony_ci compatible = "cirrus,ep9301-gpio"; 14762306a36Sopenharmony_ci reg = <0x80840040 0x04>, 14862306a36Sopenharmony_ci <0x80840044 0x04>; 14962306a36Sopenharmony_ci reg-names = "data", "dir"; 15062306a36Sopenharmony_ci gpio-controller; 15162306a36Sopenharmony_ci #gpio-cells = <2>; 15262306a36Sopenharmony_ci }; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ci... 155