summaryrefslogtreecommitdiff
path: root/target/linux/ramips/files/arch/mips
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ramips/files/arch/mips')
-rw-r--r--target/linux/ramips/files/arch/mips/ralink/rt305x/mach-whr-g300n.c27
1 files changed, 26 insertions, 1 deletions
diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-whr-g300n.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-whr-g300n.c
index b1f6dafabc..a31fbea396 100644
--- a/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-whr-g300n.c
+++ b/target/linux/ramips/files/arch/mips/ralink/rt305x/mach-whr-g300n.c
@@ -1,5 +1,5 @@
/*
- * Generic RT305x machine setup
+ * Buffalo WHR-G300N board support
*
* Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org>
*
@@ -13,12 +13,18 @@
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
#include <linux/mtd/physmap.h>
+#include <linux/leds.h>
#include <asm/mips_machine.h>
+#include <asm/mach-ralink/dev_gpio_leds.h>
#include "machine.h"
#include "devices.h"
+#define WHR_G300N_GPIO_LED_DIAG 7
+#define WHR_G300N_GPIO_LED_ROUTER 9
+#define WHR_G300N_GPIO_LED_SECURITY 14
+
#ifdef CONFIG_MTD_PARTITIONS
static struct mtd_partition whr_g300n_partitions[] = {
{
@@ -63,9 +69,28 @@ static struct physmap_flash_data whr_g300n_flash_data = {
#endif
};
+static struct gpio_led whr_g300n_leds_gpio[] __initdata = {
+ {
+ .name = "whr-g300n:red:diag",
+ .gpio = WHR_G300N_GPIO_LED_DIAG,
+ .active_low = 1,
+ }, {
+ .name = "whr-g300n:green:router",
+ .gpio = WHR_G300N_GPIO_LED_ROUTER,
+ .active_low = 1,
+ }, {
+ .name = "whr-g300n:amber:security",
+ .gpio = WHR_G300N_GPIO_LED_SECURITY,
+ .active_low = 1,
+ }
+};
+
static void __init whr_g300n_init(void)
{
rt305x_register_flash(0, &whr_g300n_flash_data);
+
+ ramips_register_gpio_leds(-1, ARRAY_SIZE(whr_g300n_leds_gpio),
+ whr_g300n_leds_gpio);
}
MIPS_MACHINE(RT305X_MACH_WHR_G300N, "Buffalo WHR-G300N", whr_g300n_init);