|
|
@@ -1,7 +1,7 @@
|
|
|
/*
|
|
|
- * TP-Link Archer C59 v1 board support
|
|
|
+ * TP-Link Archer C58/C59 v1 board support
|
|
|
*
|
|
|
- * Copyright (C) 2016 Henryk Heisig <[email protected]>
|
|
|
+ * Copyright (C) 2017 Henryk Heisig <[email protected]>
|
|
|
*
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
* under the terms of the GNU General Public License version 2 as published
|
|
|
@@ -65,6 +65,44 @@
|
|
|
#define ARCHER_C59_V1_WMAC_CALDATA_OFFSET 0x1000
|
|
|
#define ARCHER_C59_V1_PCI_CALDATA_OFFSET 0x5000
|
|
|
|
|
|
+static struct gpio_led archer_c58_v1_leds_gpio[] __initdata = {
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:power",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_POWER,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:wlan2g",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_WLAN2,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:wlan5g",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_WLAN5,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:lan",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_LAN,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:wan",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_WAN_GREEN,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:amber:wan",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_WAN_AMBER,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .name = "archer-c58-v1:green:wps",
|
|
|
+ .gpio = ARCHER_C59_74HC_GPIO_LED_WPS,
|
|
|
+ .active_low = 1,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
static struct gpio_led archer_c59_v1_leds_gpio[] __initdata = {
|
|
|
{
|
|
|
.name = "archer-c59-v1:green:power",
|
|
|
@@ -177,7 +215,7 @@ static struct spi_board_info archer_c59_v1_spi_info[] = {
|
|
|
},
|
|
|
};
|
|
|
|
|
|
-static void __init archer_c59_v1_setup(void)
|
|
|
+static void __init archer_c5x_v1_setup(void)
|
|
|
{
|
|
|
u8 *mac = (u8 *) KSEG1ADDR(0x1f010008);
|
|
|
u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);
|
|
|
@@ -187,9 +225,6 @@ static void __init archer_c59_v1_setup(void)
|
|
|
ARRAY_SIZE(archer_c59_v1_spi_info));
|
|
|
platform_device_register(&archer_c59_v1_spi_device);
|
|
|
|
|
|
- ath79_register_leds_gpio(-1, ARRAY_SIZE(archer_c59_v1_leds_gpio),
|
|
|
- archer_c59_v1_leds_gpio);
|
|
|
-
|
|
|
ath79_register_gpio_keys_polled(-1, ARCHER_C59_V1_KEYS_POLL_INTERVAL,
|
|
|
ARRAY_SIZE(archer_c59_v1_gpio_keys),
|
|
|
archer_c59_v1_gpio_keys);
|
|
|
@@ -233,5 +268,22 @@ static void __init archer_c59_v1_setup(void)
|
|
|
"LED reset");
|
|
|
}
|
|
|
|
|
|
+static void __init archer_c58_v1_setup(void)
|
|
|
+{
|
|
|
+ archer_c5x_v1_setup();
|
|
|
+ ath79_register_leds_gpio(-1, ARRAY_SIZE(archer_c58_v1_leds_gpio),
|
|
|
+ archer_c58_v1_leds_gpio);
|
|
|
+}
|
|
|
+
|
|
|
+MIPS_MACHINE(ATH79_MACH_ARCHER_C58_V1, "ARCHER-C58-V1",
|
|
|
+ "TP-LINK Archer C58 v1", archer_c58_v1_setup);
|
|
|
+
|
|
|
+static void __init archer_c59_v1_setup(void)
|
|
|
+{
|
|
|
+ archer_c5x_v1_setup();
|
|
|
+ ath79_register_leds_gpio(-1, ARRAY_SIZE(archer_c59_v1_leds_gpio),
|
|
|
+ archer_c59_v1_leds_gpio);
|
|
|
+}
|
|
|
+
|
|
|
MIPS_MACHINE(ATH79_MACH_ARCHER_C59_V1, "ARCHER-C59-V1",
|
|
|
"TP-LINK Archer C59 v1", archer_c59_v1_setup);
|