diff options
author | Raphaël HUCK <rhk@cksum.org> | 2010-04-29 12:51:41 +0000 |
---|---|---|
committer | Raphaël HUCK <rhk@cksum.org> | 2010-04-29 12:51:41 +0000 |
commit | bcca3791ea1c1e8620b6dc1e8828eae73af5282f (patch) | |
tree | a83dd595d9661aeaac384a2aed30aad39510d2c7 | |
parent | edea3f2ecf81d7d08bebaf4d3b7af29b09ac74d8 (diff) | |
download | master-187ad058-bcca3791ea1c1e8620b6dc1e8828eae73af5282f.tar.gz master-187ad058-bcca3791ea1c1e8620b6dc1e8828eae73af5282f.tar.bz2 master-187ad058-bcca3791ea1c1e8620b6dc1e8828eae73af5282f.zip |
[brcm63xx] add WPS button support for nb4 boards
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21254 3c298f89-4303-0410-b956-a3cf2f4a3e73
6 files changed, 84 insertions, 24 deletions
diff --git a/target/linux/brcm63xx/patches-2.6.32/100-reset_buttons.patch b/target/linux/brcm63xx/patches-2.6.32/100-reset_buttons.patch index 7b8501e9e4..45f506bb75 100644 --- a/target/linux/brcm63xx/patches-2.6.32/100-reset_buttons.patch +++ b/target/linux/brcm63xx/patches-2.6.32/100-reset_buttons.patch @@ -93,7 +93,7 @@ struct gpio_led leds[5]; + + /* Reset button */ -+ struct gpio_button reset_buttons[1]; ++ struct gpio_button reset_buttons[2]; }; #endif /* ! BOARD_BCM963XX_H_ */ diff --git a/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch b/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch index 170b55916d..aec85a3d17 100644 --- a/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch +++ b/target/linux/brcm63xx/patches-2.6.32/200-extended-platform-devices.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -995,6 +995,10 @@ int __init board_register_devices(void) +@@ -1000,6 +1000,10 @@ int __init board_register_devices(void) platform_device_register(&bcm63xx_gpio_buttons_device); } @@ -16,7 +16,7 @@ @@ -59,6 +59,10 @@ struct board_info { /* Reset button */ - struct gpio_button reset_buttons[1]; + struct gpio_button reset_buttons[2]; + + /* Additional platform devices */ + struct platform_device **devs; diff --git a/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch b/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch index 57ce7fc8d9..bbd0c62e70 100644 --- a/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch +++ b/target/linux/brcm63xx/patches-2.6.32/221-board-NB4.patch @@ -21,7 +21,7 @@ static struct bcm963xx_nvram nvram; static unsigned int mac_addr_used; static struct board_info board; -@@ -713,6 +720,441 @@ static struct board_info __initdata boar +@@ -713,6 +720,471 @@ static struct board_info __initdata boar .has_ohci0 = 1, }; @@ -121,11 +121,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -207,11 +213,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -291,11 +303,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -372,11 +390,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -451,11 +475,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -463,7 +493,7 @@ #endif /* -@@ -743,9 +1185,30 @@ static const struct board_info __initdat +@@ -743,9 +1215,30 @@ static const struct board_info __initdat &board_96358vw2, &board_AGPFS0, &board_DWVS0, @@ -494,7 +524,7 @@ /* * early init callback, read nvram data from flash and checksum it */ -@@ -793,6 +1256,9 @@ void __init board_prom_init(void) +@@ -793,6 +1286,9 @@ void __init board_prom_init(void) return; } @@ -514,4 +544,4 @@ + struct gpio_led leds[9]; /* Reset button */ - struct gpio_button reset_buttons[1]; + struct gpio_button reset_buttons[2]; diff --git a/target/linux/brcm63xx/patches-2.6.33/100-reset_buttons.patch b/target/linux/brcm63xx/patches-2.6.33/100-reset_buttons.patch index 02b4149ddd..aa5264d845 100644 --- a/target/linux/brcm63xx/patches-2.6.33/100-reset_buttons.patch +++ b/target/linux/brcm63xx/patches-2.6.33/100-reset_buttons.patch @@ -93,7 +93,7 @@ struct gpio_led leds[5]; + + /* Reset button */ -+ struct gpio_button reset_buttons[1]; ++ struct gpio_button reset_buttons[2]; }; #endif /* ! BOARD_BCM963XX_H_ */ diff --git a/target/linux/brcm63xx/patches-2.6.33/200-extended-platform-devices.patch b/target/linux/brcm63xx/patches-2.6.33/200-extended-platform-devices.patch index 170b55916d..aec85a3d17 100644 --- a/target/linux/brcm63xx/patches-2.6.33/200-extended-platform-devices.patch +++ b/target/linux/brcm63xx/patches-2.6.33/200-extended-platform-devices.patch @@ -1,6 +1,6 @@ --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c -@@ -995,6 +995,10 @@ int __init board_register_devices(void) +@@ -1000,6 +1000,10 @@ int __init board_register_devices(void) platform_device_register(&bcm63xx_gpio_buttons_device); } @@ -16,7 +16,7 @@ @@ -59,6 +59,10 @@ struct board_info { /* Reset button */ - struct gpio_button reset_buttons[1]; + struct gpio_button reset_buttons[2]; + + /* Additional platform devices */ + struct platform_device **devs; diff --git a/target/linux/brcm63xx/patches-2.6.33/221-board-NB4.patch b/target/linux/brcm63xx/patches-2.6.33/221-board-NB4.patch index 57ce7fc8d9..bbd0c62e70 100644 --- a/target/linux/brcm63xx/patches-2.6.33/221-board-NB4.patch +++ b/target/linux/brcm63xx/patches-2.6.33/221-board-NB4.patch @@ -21,7 +21,7 @@ static struct bcm963xx_nvram nvram; static unsigned int mac_addr_used; static struct board_info board; -@@ -713,6 +720,441 @@ static struct board_info __initdata boar +@@ -713,6 +720,471 @@ static struct board_info __initdata boar .has_ohci0 = 1, }; @@ -121,11 +121,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -207,11 +213,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -291,11 +303,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -372,11 +390,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -451,11 +475,17 @@ + { + .desc = "reset", + .gpio = 34, -+ .active_low = 1, + .type = EV_KEY, + .code = KEY_RESTART, + .threshold = 3, + }, ++ { ++ .desc = "wps", ++ .gpio = 37, ++ .type = EV_KEY, ++ .code = KEY_WPS_BUTTON, ++ .threshold = 3, ++ }, + }, + .devs = neufbox4_devices, + .num_devs = ARRAY_SIZE(neufbox4_devices), @@ -463,7 +493,7 @@ #endif /* -@@ -743,9 +1185,30 @@ static const struct board_info __initdat +@@ -743,9 +1215,30 @@ static const struct board_info __initdat &board_96358vw2, &board_AGPFS0, &board_DWVS0, @@ -494,7 +524,7 @@ /* * early init callback, read nvram data from flash and checksum it */ -@@ -793,6 +1256,9 @@ void __init board_prom_init(void) +@@ -793,6 +1286,9 @@ void __init board_prom_init(void) return; } @@ -514,4 +544,4 @@ + struct gpio_led leds[9]; /* Reset button */ - struct gpio_button reset_buttons[1]; + struct gpio_button reset_buttons[2]; |