diff options
author | Sven Eckelmann <sven.eckelmann@open-mesh.com> | 2016-09-23 09:36:10 +0200 |
---|---|---|
committer | John Crispin <john@phrozen.org> | 2017-02-15 09:35:51 +0100 |
commit | 14add3f724b6b768eed62d30bafe8ca2d305fab0 (patch) | |
tree | b9ffe123a9f819da8be272527a7476f0d424ca54 /target/linux/ar71xx/files | |
parent | b194b3d97f288e9603d3300c7493dc217aa91f1a (diff) | |
download | upstream-14add3f724b6b768eed62d30bafe8ca2d305fab0.tar.gz upstream-14add3f724b6b768eed62d30bafe8ca2d305fab0.tar.bz2 upstream-14add3f724b6b768eed62d30bafe8ca2d305fab0.zip |
ar71xx: add kernel support for the OpenMesh A40 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Diffstat (limited to 'target/linux/ar71xx/files')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/Kconfig.openwrt | 2 | ||||
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/mach-a60.c | 21 | ||||
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/machtypes.h | 1 |
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 */ |