aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/files/arch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ar71xx/files/arch')
-rw-r--r--target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt2
-rw-r--r--target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c21
-rw-r--r--target/linux/ar71xx/files/arch/mips/ath79/machtypes.h1
3 files changed, 23 insertions, 1 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
index bba425094c..894367fbb9 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
+++ b/target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt
@@ -1,5 +1,5 @@
config ATH79_MACH_A60
- bool "OpenMesh A60 board support"
+ bool "OpenMesh A40/A60 board support"
select SOC_QCA955X
select ATH79_DEV_AP9X_PCI if PCI
select ATH79_DEV_ETH
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c
index 73fba1e264..2f0a75f7bb 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c
@@ -40,6 +40,19 @@
#define A60_WMAC_CALDATA_OFFSET 0x1000
+static struct gpio_led a40_leds_gpio[] __initdata = {
+ {
+ .name = "a40:red:status",
+ .gpio = A60_GPIO_LED_RED,
+ }, {
+ .name = "a40:green:status",
+ .gpio = A60_GPIO_LED_GREEN,
+ }, {
+ .name = "a40:blue:status",
+ .gpio = A60_GPIO_LED_BLUE,
+ }
+};
+
static struct gpio_led a60_leds_gpio[] __initdata = {
{
.name = "a60:red:status",
@@ -151,6 +164,14 @@ static void __init a60_setup_common(void)
ath79_register_pci();
}
+static void __init a40_setup(void)
+{
+ ath79_register_leds_gpio(-1, ARRAY_SIZE(a40_leds_gpio), a40_leds_gpio);
+ a60_setup_common();
+}
+
+MIPS_MACHINE(ATH79_MACH_A40, "A40", "OpenMesh A40", a40_setup);
+
static void __init a60_setup(void)
{
ath79_register_leds_gpio(-1, ARRAY_SIZE(a60_leds_gpio), a60_leds_gpio);
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
index 598c0ef6aa..b9a8e3e4e0 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
+++ b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
@@ -17,6 +17,7 @@
enum ath79_mach_type {
ATH79_MACH_GENERIC_OF = -1, /* Device tree board */
ATH79_MACH_GENERIC = 0,
+ ATH79_MACH_A40, /* OpenMesh A40 */
ATH79_MACH_A60, /* OpenMesh A60 */
ATH79_MACH_ALFA_AP120C, /* ALFA Network AP120C board */
ATH79_MACH_ALFA_AP96, /* ALFA Network AP96 board */