ramips: use gpio-keys-polled instead of gpio-buttons
[openwrt.git] / target / linux / ramips / files / arch / mips / ralink / rt305x / mach-fonera20n.c
index c87bdaf..5955f63 100644 (file)
@@ -29,9 +29,9 @@
 #define FONERA20N_GPIO_LED_POWER       9
 #define FONERA20N_GPIO_LED_USB         14
 
-#define FONERA20N_BUTTONS_POLL_INTERVAL        20
+#define FONERA20N_KEYS_POLL_INTERVAL   20
+#define FONERA20N_KEYS_DEBOUNCE_INTERVAL (3 * FONERA20N_KEYS_POLL_INTERVAL)
 
-#ifdef CONFIG_MTD_PARTITIONS
 static struct mtd_partition fonera20n_partitions[] = {
        {
                .name   = "u-boot",
@@ -57,18 +57,15 @@ static struct mtd_partition fonera20n_partitions[] = {
                .offset = 0x150000,
                .size   = 0x6b0000,
        }, {
-               .name   = "openwrt",
+               .name   = "firmware",
                .offset = 0x050000,
                .size   = 0x7b0000,
        }
 };
-#endif /* CONFIG_MTD_PARTITIONS */
 
 static struct physmap_flash_data fonera20n_flash_data = {
-#ifdef CONFIG_MTD_PARTITIONS
        .nr_parts       = ARRAY_SIZE(fonera20n_partitions),
        .parts          = fonera20n_partitions,
-#endif
 };
 
 static struct gpio_led fonera20n_leds_gpio[] __initdata = {
@@ -87,19 +84,19 @@ static struct gpio_led fonera20n_leds_gpio[] __initdata = {
        }
 };
 
-static struct gpio_button fonera20n_gpio_buttons[] __initdata = {
+static struct gpio_keys_button fonera20n_gpio_buttons[] __initdata = {
        {
                .desc           = "reset",
                .type           = EV_KEY,
-               .code           = BTN_0,
-               .threshold      = 3,
+               .code           = KEY_RESTART,
+               .debounce_interval = FONERA20N_KEYS_DEBOUNCE_INTERVAL,
                .gpio           = FONERA20N_GPIO_BUTTON_RESET,
                .active_low     = 1,
        }, {
                .desc           = "switch",
                .type           = EV_KEY,
                .code           = BTN_1,
-               .threshold      = 3,
+               .debounce_interval = FONERA20N_KEYS_DEBOUNCE_INTERVAL,
                .gpio           = FONERA20N_GPIO_SWITCH,
                .active_low     = 1,
        }
@@ -114,12 +111,15 @@ static void __init fonera20n_init(void)
        ramips_register_gpio_leds(-1, ARRAY_SIZE(fonera20n_leds_gpio),
                                  fonera20n_leds_gpio);
 
-       ramips_register_gpio_buttons(-1, FONERA20N_BUTTONS_POLL_INTERVAL,
+       ramips_register_gpio_buttons(-1, FONERA20N_KEYS_POLL_INTERVAL,
                                     ARRAY_SIZE(fonera20n_gpio_buttons),
                                     fonera20n_gpio_buttons);
 
+       rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
        rt305x_register_ethernet();
        rt305x_register_wifi();
+       rt305x_register_wdt();
+       rt305x_register_usb();
 }
 
 MIPS_MACHINE(RAMIPS_MACH_FONERA20N, "FONERA20N", "La Fonera 2.0N",
This page took 0.030646 seconds and 4 git commands to generate.