19777d809SBaruch SiachRaspberry Pi GPIO expander 29777d809SBaruch Siach 39777d809SBaruch SiachThe Raspberry Pi 3 GPIO expander is controlled by the VC4 firmware. The 49777d809SBaruch Siachfirmware exposes a mailbox interface that allows the ARM core to control the 59777d809SBaruch SiachGPIO lines on the expander. 69777d809SBaruch Siach 79777d809SBaruch SiachThe Raspberry Pi GPIO expander node must be a child node of the Raspberry Pi 89777d809SBaruch Siachfirmware node. 99777d809SBaruch Siach 109777d809SBaruch SiachRequired properties: 119777d809SBaruch Siach 129777d809SBaruch Siach- compatible : Should be "raspberrypi,firmware-gpio" 139777d809SBaruch Siach- gpio-controller : Marks the device node as a gpio controller 149777d809SBaruch Siach- #gpio-cells : Should be two. The first cell is the pin number, and 159777d809SBaruch Siach the second cell is used to specify the gpio polarity: 169777d809SBaruch Siach 0 = active high 179777d809SBaruch Siach 1 = active low 189777d809SBaruch Siach 199777d809SBaruch SiachExample: 209777d809SBaruch Siach 219777d809SBaruch Siachfirmware: firmware-rpi { 229777d809SBaruch Siach compatible = "raspberrypi,bcm2835-firmware"; 239777d809SBaruch Siach mboxes = <&mailbox>; 249777d809SBaruch Siach 259777d809SBaruch Siach expgpio: gpio { 269777d809SBaruch Siach compatible = "raspberrypi,firmware-gpio"; 279777d809SBaruch Siach gpio-controller; 289777d809SBaruch Siach #gpio-cells = <2>; 299777d809SBaruch Siach }; 309777d809SBaruch Siach}; 31