X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=target%2Flinux%2Far71xx%2Ffiles%2Farch%2Fmips%2Far71xx%2Fmach-wnr2000.c;h=1da20fafc470ab5d3b11c2782ba99999233d4ca1;hp=24cf477a19e6cedde847b02d8b6f1a4fec7ad8d3;hb=c1e8a5560a250f85411438381a27b98af7c9c3d4;hpb=8105b8ce4afef3eb32c155afc7903916b1e840d2 diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c index 24cf477a19..1da20fafc4 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wnr2000.c @@ -29,7 +29,8 @@ #define WNR2000_GPIO_BTN_RESET 21 #define WNR2000_GPIO_BTN_WPS 8 -#define WNR2000_BUTTONS_POLL_INTERVAL 20 +#define WNR2000_KEYS_POLL_INTERVAL 20 /* msecs */ +#define WNR2000_KEYS_DEBOUNCE_INTERVAL (3 * WNR2000_KEYS_POLL_INTERVAL) #ifdef CONFIG_MTD_PARTITIONS static struct mtd_partition wnr2000_partitions[] = { @@ -98,18 +99,18 @@ static struct gpio_led wnr2000_leds_gpio[] __initdata = { } }; -static struct gpio_button wnr2000_gpio_buttons[] __initdata = { +static struct gpio_keys_button wnr2000_gpio_keys[] __initdata = { { .desc = "reset", .type = EV_KEY, .code = KEY_RESTART, - .threshold = 3, + .debounce_interval = WNR2000_KEYS_DEBOUNCE_INTERVAL, .gpio = WNR2000_GPIO_BTN_RESET, }, { .desc = "wps", .type = EV_KEY, .code = KEY_WPS_BUTTON, - .threshold = 3, + .debounce_interval = WNR2000_KEYS_DEBOUNCE_INTERVAL, .gpio = WNR2000_GPIO_BTN_WPS, } }; @@ -138,9 +139,9 @@ static void __init wnr2000_setup(void) ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(wnr2000_leds_gpio), wnr2000_leds_gpio); - ar71xx_add_device_gpio_buttons(-1, WNR2000_BUTTONS_POLL_INTERVAL, - ARRAY_SIZE(wnr2000_gpio_buttons), - wnr2000_gpio_buttons); + ar71xx_register_gpio_keys_polled(-1, WNR2000_KEYS_POLL_INTERVAL, + ARRAY_SIZE(wnr2000_gpio_keys), + wnr2000_gpio_keys); ar9xxx_add_device_wmac(eeprom, NULL);