X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/7a5c327fcf3fe2e411c3934b8feee3d46a00eadc..3b5a6363a0cebe502193f0af8954caf8db8c52f5:/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-wr6202.c diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-wr6202.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-wr6202.c index 64ea20113..591d9ceb5 100644 --- a/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-wr6202.c +++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-wr6202.c @@ -10,9 +10,6 @@ #include #include -#include -#include -#include #include #include @@ -26,48 +23,14 @@ #define WR6202_GPIO_BUTTON_RESET 10 /* active low */ #define WR6202_GPIO_BUTTON_WPS 0 /* active low */ -#define WR6202_BUTTONS_POLL_INTERVAL 20 +#define WR6202_KEYS_POLL_INTERVAL 20 +#define WR6202_KEYS_DEBOUNCE_INTERVAL (3 * WR6202_KEYS_POLL_INTERVAL) #define WR6202_GPIO_USB_POWER 11 #define WR6202_GPIO_LED_3G 13 #define WR6202_GPIO_LED_WPS 14 -#ifdef CONFIG_MTD_PARTITIONS -static struct mtd_partition wr6202_partitions[] = { - { - .name = "uboot", - .offset = 0, - .size = 0x030000, - }, { - .name = "uboot-config", - .offset = 0x030000, - .size = 0x040000, - .mask_flags = MTD_WRITEABLE, - }, { - .name = "factory", - .offset = 0x040000, - .size = 0x050000, - .mask_flags = MTD_WRITEABLE, - }, { - .name = "linux", - .offset = 0x050000, - .size = 0x100000, - }, { - .name = "rootfs", - .offset = 0x150000, - .size = 0x6B0000, - } -}; -#endif /* CONFIG_MTD_PARTITIONS */ - -static struct physmap_flash_data wr6202_flash_data = { -#ifdef CONFIG_MTD_PARTITIONS - .nr_parts = ARRAY_SIZE(wr6202_partitions), - .parts = wr6202_partitions, -#endif -}; - static struct gpio_led wr6202_leds_gpio[] __initdata = { { .name = "wr6202:blue:wps", @@ -80,19 +43,19 @@ static struct gpio_led wr6202_leds_gpio[] __initdata = { } }; -static struct gpio_button wr6202_gpio_buttons[] __initdata = { +static struct gpio_keys_button wr6202_gpio_buttons[] __initdata = { { .desc = "reset", .type = EV_KEY, .code = KEY_RESTART, - .threshold = 3, + .debounce_interval = WR6202_KEYS_DEBOUNCE_INTERVAL, .gpio = WR6202_GPIO_BUTTON_RESET, .active_low = 1, }, { .desc = "wps", .type = EV_KEY, .code = KEY_WPS_BUTTON, - .threshold = 3, + .debounce_interval = WR6202_KEYS_DEBOUNCE_INTERVAL, .gpio = WR6202_GPIO_BUTTON_WPS, .active_low = 1, } @@ -106,7 +69,7 @@ static void __init wr6202_init(void) ramips_register_gpio_leds(-1, ARRAY_SIZE(wr6202_leds_gpio), wr6202_leds_gpio); - ramips_register_gpio_buttons(-1, WR6202_BUTTONS_POLL_INTERVAL, + ramips_register_gpio_buttons(-1, WR6202_KEYS_POLL_INTERVAL, ARRAY_SIZE(wr6202_gpio_buttons), wr6202_gpio_buttons); @@ -115,7 +78,8 @@ static void __init wr6202_init(void) gpio_direction_output(WR6202_GPIO_USB_POWER, 0); gpio_free(WR6202_GPIO_USB_POWER); - rt305x_register_flash(0, &wr6202_flash_data); + rt305x_register_flash(0); + rt305x_register_ethernet(); rt305x_register_wifi(); rt305x_register_wdt();