regulator-always-on;
                        };
 
+                       gpio_keys {
+                               compatible = "gpio-keys";
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+
+                               button@1 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <116>;
+                                       label = "POWER";
+                                       gpios = <&iofpga_gpio0 0 0x4>;
+                               };
+                               button@2 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <102>;
+                                       label = "HOME";
+                                       gpios = <&iofpga_gpio0 1 0x4>;
+                               };
+                               button@3 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <152>;
+                                       label = "RLOCK";
+                                       gpios = <&iofpga_gpio0 2 0x4>;
+                               };
+                               button@4 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <115>;
+                                       label = "VOL+";
+                                       gpios = <&iofpga_gpio0 3 0x4>;
+                               };
+                               button@5 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <114>;
+                                       label = "VOL-";
+                                       gpios = <&iofpga_gpio0 4 0x4>;
+                               };
+                               button@6 {
+                                       debounce_interval = <50>;
+                                       wakeup = <1>;
+                                       linux,code = <99>;
+                                       label = "NMI";
+                                       gpios = <&iofpga_gpio0 5 0x4>;
+                               };
+                       };
+
                        ethernet@2,00000000 {
                                compatible = "smsc,lan9118", "smsc,lan9115";
                                reg = <2 0x00000000 0x10000>;
                                        clocks = <&soc_smc50mhz>;
                                        clock-names = "apb_pclk";
                                };
+
+                               iofpga_gpio0: gpio@1d0000 {
+                                       compatible = "arm,pl061", "arm,primecell";
+                                       reg = <0x1d0000 0x1000>;
+                                       interrupts = <6>;
+                                       clocks = <&soc_smc50mhz>;
+                                       clock-names = "apb_pclk";
+                                       gpio-controller;
+                                       #gpio-cells = <2>;
+                                       interrupt-controller;
+                                       #interrupt-cells = <2>;
+                               };
                        };
                };