162306a36Sopenharmony_ci* Abilis TB10x GPIO controller 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciRequired Properties: 462306a36Sopenharmony_ci- compatible: Should be "abilis,tb10x-gpio" 562306a36Sopenharmony_ci- reg: Address and length of the register set for the device 662306a36Sopenharmony_ci- gpio-controller: Marks the device node as a gpio controller. 762306a36Sopenharmony_ci- #gpio-cells: Should be <2>. The first cell is the pin number and the 862306a36Sopenharmony_ci second cell is used to specify optional parameters: 962306a36Sopenharmony_ci - bit 0 specifies polarity (0 for normal, 1 for inverted). 1062306a36Sopenharmony_ci- abilis,ngpio: the number of GPIO pins this driver controls. 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciOptional Properties: 1362306a36Sopenharmony_ci- interrupt-controller: Marks the device node as an interrupt controller. 1462306a36Sopenharmony_ci- #interrupt-cells: Should be <1>. Interrupts are triggered on both edges. 1562306a36Sopenharmony_ci- interrupts: Defines the interrupt line connecting this GPIO controller to 1662306a36Sopenharmony_ci its parent interrupt controller. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciGPIO ranges are specified as described in 1962306a36Sopenharmony_ciDocumentation/devicetree/bindings/gpio/gpio.txt 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciExample: 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci gpioa: gpio@ff140000 { 2462306a36Sopenharmony_ci compatible = "abilis,tb10x-gpio"; 2562306a36Sopenharmony_ci interrupt-controller; 2662306a36Sopenharmony_ci #interrupt-cells = <1>; 2762306a36Sopenharmony_ci interrupt-parent = <&tb10x_ictl>; 2862306a36Sopenharmony_ci interrupts = <27 2>; 2962306a36Sopenharmony_ci reg = <0xFF140000 0x1000>; 3062306a36Sopenharmony_ci gpio-controller; 3162306a36Sopenharmony_ci #gpio-cells = <2>; 3262306a36Sopenharmony_ci abilis,ngpio = <3>; 3362306a36Sopenharmony_ci gpio-ranges = <&iomux 0 0 0>; 3462306a36Sopenharmony_ci gpio-ranges-group-names = "gpioa_pins"; 3562306a36Sopenharmony_ci }; 36