+--- a/arch/mips/bcm63xx/boards/board_common.c
++++ b/arch/mips/bcm63xx/boards/board_common.c
+@@ -12,6 +12,7 @@
+ #include <linux/string.h>
+ #include <linux/platform_device.h>
+ #include <linux/ssb/ssb.h>
++#include <linux/gpio_keys.h>
+ #include <asm/addrspace.h>
+ #include <bcm63xx_board.h>
+ #include <bcm63xx_cpu.h>
+@@ -32,6 +33,8 @@
+
+ #define PFX "board: "
+
++#define BCM963XX_KEYS_POLL_INTERVAL 20
++
+ static struct board_info board;
+
+ /*
+@@ -151,11 +154,23 @@ static struct platform_device bcm63xx_gp