diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-12-14 20:21:42 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-12-14 20:21:42 +0000 |
commit | b878f4a927e872889879d1bc49abc88ff6edb1ea (patch) | |
tree | a5c7bc7fb64431d1f6001957cff6106fe4ba4c44 /target/linux/ar71xx | |
parent | e3017bc05e316ade69484923c2ea9c26cdc4802e (diff) | |
download | upstream-b878f4a927e872889879d1bc49abc88ff6edb1ea.tar.gz upstream-b878f4a927e872889879d1bc49abc88ff6edb1ea.tar.bz2 upstream-b878f4a927e872889879d1bc49abc88ff6edb1ea.zip |
ar71xx: register extra leds behind the wireless mac on wzr-hp-g450h
SVN-Revision: 29531
Diffstat (limited to 'target/linux/ar71xx')
3 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.c b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.c index 2b75f7bcb7..7cd8c6594e 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.c @@ -42,6 +42,12 @@ static int ap91_pci_plat_dev_init(struct pci_dev *dev) return 0; } +__init void ap91_pci_setup_wmac_leds(struct gpio_led *leds, int num_leds) +{ + ap91_wmac_data.leds = leds; + ap91_wmac_data.num_leds = num_leds; +} + __init void ap91_pci_setup_wmac_led_pin(int pin) { ap91_wmac_data.led_pin = pin; diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.h b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.h index e471083dee..ebcbc47299 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.h +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/dev-ap91-pci.h @@ -11,14 +11,18 @@ #ifndef _AR71XX_DEV_AP91_PCI_H #define _AR71XX_DEV_AP91_PCI_H +#include <linux/leds.h> + #if defined(CONFIG_AR71XX_DEV_AP91_PCI) void ap91_pci_init(u8 *cal_data, u8 *mac_addr) __init; void ap91_pci_setup_wmac_led_pin(int pin) __init; void ap91_pci_setup_wmac_gpio(u32 mask, u32 val) __init; +void ap91_pci_setup_wmac_leds(struct gpio_led *leds, int num_leds) __init; #else static inline void ap91_pci_init(u8 *cal_data, u8 *mac_addr) { } static inline void ap91_pci_setup_wmac_led_pin(int pin) { } static inline void ap91_pci_setup_wmac_gpio(u32 mask, u32 gpio) { } +static inline void ap91_pci_setup_wmac_leds(struct gpio_led *leds, int num_leds) { }; #endif #endif /* _AR71XX_DEV_AP91_PCI_H */ diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wzr-hp-g450h.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wzr-hp-g450h.c index f9cc025e43..03376bb921 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wzr-hp-g450h.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-wzr-hp-g450h.c @@ -82,6 +82,20 @@ static struct gpio_led wzrhpg450h_leds_gpio[] __initdata = { }, }; + +static struct gpio_led wzrhpg450h_wmac_leds_gpio[] = { + { + .name = "buffalo:blue:movie_engine", + .gpio = 13, + .active_low = 1, + }, + { + .name = "buffalo:green:router", + .gpio = 14, + .active_low = 1, + }, +}; + static struct gpio_keys_button wzrhpg450h_gpio_keys[] __initdata = { { .desc = "reset", @@ -151,6 +165,8 @@ static void __init wzrhpg450h_init(void) ap91_pci_init(ee, NULL); ap91_pci_setup_wmac_led_pin(15); + ap91_pci_setup_wmac_leds(wzrhpg450h_wmac_leds_gpio, + ARRAY_SIZE(wzrhpg450h_wmac_leds_gpio)); } MIPS_MACHINE(AR71XX_MACH_WZR_HP_G450H, "WZR-HP-G450H", "Buffalo WZR-HP-G450H", |