From 1631af02545271cc0be707565ea19eb33dfa8aa6 Mon Sep 17 00:00:00 2001 From: juhosg Date: Wed, 29 Aug 2012 10:11:55 +0000 Subject: ar71xx: Buffalo WZR-HP-AG300H LED support An improved LED support for Buffalo WZR-HP-AG300H. There will be two new packages to go with this patch (ar922x-led-fix-hotplug and ar922x-led-fix-init). These packages essentially perform the same task of disabling "JTAG over GPIO pins" function which is currently required for LEDs on AR922x emac GPIO to work, and are both considered a temporary fix that circumvent this problem. [juhosg: add the hotplug script from the proposed ar922x-led-fix-hotplug package to ar71xx/base-files] Signed-off-by: Yoichi Shinoda git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33294 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../files/arch/mips/ath79/mach-wzr-hp-ag300h.c | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) (limited to 'target/linux/ar71xx/files/arch/mips') diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-ag300h.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-ag300h.c index 5941d5ca9..868514c95 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-ag300h.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-wzr-hp-ag300h.c @@ -75,6 +75,47 @@ static struct gpio_led wzrhpag300h_leds_gpio[] __initdata = { }, }; +static struct gpio_led wzrhpag300h_wmac0_leds_gpio[] = { + { + .name = "buffalo:amber:band2g", + .gpio = 1, + .active_low = 1, + }, + { + .name = "buffalo:green:usb", + .gpio = 3, + .active_low = 1, + }, + { + .name = "buffalo:green:band2g", + .gpio = 5, + .active_low = 1, + }, +}; + +static struct gpio_led wzrhpag300h_wmac1_leds_gpio[] = { + { + .name = "buffalo:green:band5g", + .gpio = 1, + .active_low = 1, + }, + { + .name = "buffalo:green:router", + .gpio = 3, + .active_low = 1, + }, + { + .name = "buffalo:blue:movie_engine", + .gpio = 4, + .active_low = 1, + }, + { + .name = "buffalo:amber:band5g", + .gpio = 5, + .active_low = 1, + }, +}; + static struct gpio_keys_button wzrhpag300h_gpio_keys[] __initdata = { { .desc = "reset", @@ -111,6 +152,13 @@ static struct gpio_keys_button wzrhpag300h_gpio_keys[] __initdata = { .debounce_interval = WZRHPAG300H_KEYS_DEBOUNCE_INTERVAL, .gpio = 7, .active_low = 1, + }, { + .desc = "movie_engine", + .type = EV_KEY, + .code = BTN_7, + .debounce_interval = WZRHPAG300H_KEYS_DEBOUNCE_INTERVAL, + .gpio = 8, + .active_low = 1, } }; @@ -150,6 +198,14 @@ static void __init wzrhpag300h_setup(void) ath79_register_m25p80_multi(&wzrhpag300h_flash_data); ap94_pci_init(eeprom1, mac1, eeprom2, mac2); + + ap9x_pci_setup_wmac_led_pin(0, 1); + ap9x_pci_setup_wmac_led_pin(1, 5); + + ap9x_pci_setup_wmac_leds(0, wzrhpag300h_wmac0_leds_gpio, + ARRAY_SIZE(wzrhpag300h_wmac0_leds_gpio)); + ap9x_pci_setup_wmac_leds(1, wzrhpag300h_wmac1_leds_gpio, + ARRAY_SIZE(wzrhpag300h_wmac1_leds_gpio)); } MIPS_MACHINE(ATH79_MACH_WZR_HP_AG300H, "WZR-HP-AG300H", -- cgit v1.2.3