1ad2db351SJoshua Henderson* Microchip PIC32 GPIO devices (PIO). 2ad2db351SJoshua Henderson 3ad2db351SJoshua HendersonRequired properties: 4ad2db351SJoshua Henderson - compatible: "microchip,pic32mzda-gpio" 5ad2db351SJoshua Henderson - reg: Base address and length for the device. 6ad2db351SJoshua Henderson - interrupts: The port interrupt shared by all pins. 7ad2db351SJoshua Henderson - gpio-controller: Marks the port as GPIO controller. 8ad2db351SJoshua Henderson - #gpio-cells: Two. The first cell is the pin number and 9ad2db351SJoshua Henderson the second cell is used to specify the gpio polarity as defined in 10ad2db351SJoshua Henderson defined in <dt-bindings/gpio/gpio.h>: 11ad2db351SJoshua Henderson 0 = GPIO_ACTIVE_HIGH 12ad2db351SJoshua Henderson 1 = GPIO_ACTIVE_LOW 13ad2db351SJoshua Henderson 2 = GPIO_OPEN_DRAIN 14ad2db351SJoshua Henderson - interrupt-controller: Marks the device node as an interrupt controller. 15ad2db351SJoshua Henderson - #interrupt-cells: Two. The first cell is the GPIO number and second cell 16ad2db351SJoshua Henderson is used to specify the trigger type as defined in 17ad2db351SJoshua Henderson <dt-bindings/interrupt-controller/irq.h>: 18ad2db351SJoshua Henderson IRQ_TYPE_EDGE_RISING 19ad2db351SJoshua Henderson IRQ_TYPE_EDGE_FALLING 20ad2db351SJoshua Henderson IRQ_TYPE_EDGE_BOTH 21ad2db351SJoshua Henderson - clocks: Clock specifier (see clock bindings for details). 22ad2db351SJoshua Henderson - microchip,gpio-bank: Specifies which bank a controller owns. 23ad2db351SJoshua Henderson - gpio-ranges: Interaction with the PINCTRL subsystem. 24ad2db351SJoshua Henderson 25ad2db351SJoshua HendersonExample: 26ad2db351SJoshua Henderson 27ad2db351SJoshua Henderson/* PORTA */ 28ad2db351SJoshua Hendersongpio0: gpio0@1f860000 { 29ad2db351SJoshua Henderson compatible = "microchip,pic32mzda-gpio"; 30ad2db351SJoshua Henderson reg = <0x1f860000 0x100>; 31ad2db351SJoshua Henderson interrupts = <118 IRQ_TYPE_LEVEL_HIGH>; 32ad2db351SJoshua Henderson #gpio-cells = <2>; 33ad2db351SJoshua Henderson gpio-controller; 34ad2db351SJoshua Henderson interrupt-controller; 35ad2db351SJoshua Henderson #interrupt-cells = <2>; 36*dd317403SPurna Chandra Mandal clocks = <&rootclk PB4CLK>; 37ad2db351SJoshua Henderson microchip,gpio-bank = <0>; 38ad2db351SJoshua Henderson gpio-ranges = <&pic32_pinctrl 0 0 16>; 39ad2db351SJoshua Henderson}; 40ad2db351SJoshua Henderson 41ad2db351SJoshua Hendersonkeys { 42ad2db351SJoshua Henderson ... 43ad2db351SJoshua Henderson 44ad2db351SJoshua Henderson button@sw1 { 45ad2db351SJoshua Henderson label = "ESC"; 46ad2db351SJoshua Henderson linux,code = <1>; 47ad2db351SJoshua Henderson gpios = <&gpio0 12 0>; 48ad2db351SJoshua Henderson }; 49ad2db351SJoshua Henderson}; 50