ar71xx: Fix TL-WR841N v11 LEDs, use separate machine
authorStijn Segers <francesco.borromini@inventati.org>
Mon, 30 May 2016 17:08:33 +0000 (19:08 +0200)
committerMatthias Schiffer <mschiffer@universe-factory.net>
Tue, 31 May 2016 15:36:51 +0000 (17:36 +0200)
Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
target/linux/ar71xx/base-files/etc/board.d/01_leds
target/linux/ar71xx/base-files/etc/board.d/02_network
target/linux/ar71xx/base-files/etc/diag.sh
target/linux/ar71xx/base-files/lib/ar71xx.sh
target/linux/ar71xx/base-files/lib/upgrade/platform.sh
target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wr841n-v9.c
target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
target/linux/ar71xx/image/tp-link.mk

index bee2fb80c1119f8d7dd2a0f87c2edd3c329f4048..fc2bffe4978919118d85f336f3f7d28118562cd5 100755 (executable)
@@ -610,7 +610,8 @@ tl-wa830re-v2)
        ucidef_set_led_wlan "wlan" "WLAN" "tp-link:green:wlan" "phy0tpt"
        ;;
 
-tl-wr841n-v9)
+tl-wr841n-v9 | \
+tl-wr841n-v11)
        ucidef_set_led_netdev "wan" "WAN" "tp-link:green:wan" "eth1"
        ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10"
        ucidef_set_led_switch "lan2" "LAN2" "tp-link:green:lan2" "switch0" "0x08"
index 916bed960aadd59b13c5473a25db455b72a52e29..8de29317e36516081feb1865394c778302a24cf5 100755 (executable)
@@ -463,6 +463,7 @@ tl-wr741nd |\
 tl-wr741nd-v4 |\
 tl-wr841n-v7 |\
 tl-wr841n-v9 |\
+tl-wr841n-v11 |\
 tl-wr842n-v3 |\
 whr-g301n |\
 whr-hp-g300n |\
index 4c37ab0d0fd40183a21704050f1d2996fb6d736b..e43657148aea28dda4da27011327029844f75f51 100644 (file)
@@ -321,6 +321,7 @@ get_status_led() {
        tl-wr841n-v1 | \
        tl-wr841n-v7 | \
        tl-wr841n-v8 | \
+       tl-wr841n-v11 | \
        tl-wa830re-v2 | \
        tl-wr842n-v2 | \
        tl-wr842n-v3 | \
index b06c60ed70d5c34cb5b64eaef9850c7b9f0e4e23..c2ad7690a3059a337b8b4adc112d31a0b2ba1e17 100755 (executable)
@@ -917,6 +917,9 @@ ar71xx_board_detect() {
        *"TL-WR841N/ND v9")
                name="tl-wr841n-v9"
                ;;
+       *"TL-WR841N/ND v11")
+               name="tl-wr841n-v11"
+               ;;
        *"TL-WR842N/ND v2")
                name="tl-wr842n-v2"
                ;;
index 2505b7575c239eb354a5f210b282eb09e342df86..bfab73cc7cf7d378a7e5f7a93d61ea8d566308c1 100755 (executable)
@@ -388,6 +388,7 @@ platform_check_image() {
        tl-wr841n-v7 | \
        tl-wr841n-v8 | \
        tl-wr841n-v9 | \
+       tl-wr841n-v11 | \
        tl-wr842n-v2 | \
        tl-wr842n-v3 | \
        tl-wr941nd | \
index 02096031db9ca7fc632044618806d9d395cfb930..f806568f983af2f616e2612d93d83c60bfdf9546 100644 (file)
@@ -1,8 +1,9 @@
 /*
- *  TP-LINK TL-WR841N/ND v9/TL-WR842N/ND v3
+ *  TP-LINK TL-WR841N/ND v9/v11 / TL-WR842N/ND v3
  *
  *  Copyright (C) 2014 Matthias Schiffer <mschiffer@universe-factory.net>
  *  Copyright (C) 2016 Cezary Jackiewicz <cezary@eko.one.pl>
+ *  Copyright (C) 2016 Stijn Segers <francesco.borromini@gmail.com>
  *
  *  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
 #define TL_WR841NV9_GPIO_BTN_RESET     12
 #define TL_WR841NV9_GPIO_BTN_WIFI      17
 
+#define TL_WR841NV11_GPIO_LED_SYSTEM   1
+#define TL_WR841NV11_GPIO_LED_QSS      3
+#define TL_WR841NV11_GPIO_LED_WAN      4
+#define TL_WR841NV11_GPIO_LED_WAN_STATUS       2
+#define TL_WR841NV11_GPIO_LED_WLAN     13
+#define TL_WR841NV11_GPIO_LED_LAN1     16
+#define TL_WR841NV11_GPIO_LED_LAN2     15
+#define TL_WR841NV11_GPIO_LED_LAN3     14
+#define TL_WR841NV11_GPIO_LED_LAN4     11
+
+#define TL_WR841NV11_GPIO_BTN_RESET    12
+#define TL_WR841NV11_GPIO_BTN_WIFI     17
+
 #define TL_WR842NV3_GPIO_LED_SYSTEM    2
 #define TL_WR842NV3_GPIO_LED_WLAN      3
 #define TL_WR842NV3_GPIO_LED_WAN_RED   4
@@ -111,6 +125,46 @@ static struct gpio_keys_button tl_wr841n_v9_gpio_keys[] __initdata = {
        }
 };
 
+static struct gpio_led tl_wr841n_v11_leds_gpio[] __initdata = {
+       {
+               .name           = "tp-link:green:lan1",
+               .gpio           = TL_WR841NV9_GPIO_LED_LAN1,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:lan2",
+               .gpio           = TL_WR841NV9_GPIO_LED_LAN2,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:lan3",
+               .gpio           = TL_WR841NV9_GPIO_LED_LAN3,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:lan4",
+               .gpio           = TL_WR841NV9_GPIO_LED_LAN4,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:qss",
+               .gpio           = TL_WR841NV9_GPIO_LED_QSS,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:system",
+               .gpio           = TL_WR841NV11_GPIO_LED_SYSTEM,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:wan",
+               .gpio           = TL_WR841NV9_GPIO_LED_WAN,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:wan_status",
+               .gpio           = TL_WR841NV11_GPIO_LED_WAN_STATUS,
+               .active_low     = 1,
+       }, {
+               .name           = "tp-link:green:wlan",
+               .gpio           = TL_WR841NV9_GPIO_LED_WLAN,
+               .active_low     = 1,
+       },
+};
+
 static struct gpio_led tl_wr842n_v3_leds_gpio[] __initdata = {
        {
                .name           = "tp-link:green:lan1",
@@ -221,6 +275,21 @@ static void __init tl_wr841n_v9_setup(void)
 MIPS_MACHINE(ATH79_MACH_TL_WR841N_V9, "TL-WR841N-v9", "TP-LINK TL-WR841N/ND v9",
             tl_wr841n_v9_setup);
 
+static void __init tl_wr841n_v11_setup(void)
+{
+       tl_ap143_setup();
+
+       ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr841n_v11_leds_gpio),
+                                tl_wr841n_v11_leds_gpio);
+
+       ath79_register_gpio_keys_polled(1, TL_WR841NV9_KEYS_POLL_INTERVAL,
+                                       ARRAY_SIZE(tl_wr841n_v9_gpio_keys),
+                                       tl_wr841n_v9_gpio_keys);
+}
+
+MIPS_MACHINE(ATH79_MACH_TL_WR841N_V11, "TL-WR841N-v11", "TP-LINK TL-WR841N/ND v11",
+            tl_wr841n_v11_setup);
+
 static void __init tl_wr842n_v3_setup(void)
 {
        tl_ap143_setup();
index 65b1d79019309ec108e6550238390b705742fd08..fc02147e02d9297585dd44de51ef8c42764d6ad2 100644 (file)
@@ -202,6 +202,7 @@ enum ath79_mach_type {
        ATH79_MACH_TL_WR841N_V7,        /* TP-LINK TL-WR841N/ND v7 */
        ATH79_MACH_TL_WR841N_V8,        /* TP-LINK TL-WR841N/ND v8 */
        ATH79_MACH_TL_WR841N_V9,        /* TP-LINK TL-WR841N/ND v9 */
+       ATH79_MACH_TL_WR841N_V11,       /* TP-LINK TL-WR841N/ND v11 */
        ATH79_MACH_TL_WR842N_V2,        /* TP-LINK TL-WR842N/ND v2 */
        ATH79_MACH_TL_WR842N_V3,        /* TP-LINK TL-WR842N/ND v3 */
        ATH79_MACH_TL_WR941ND,          /* TP-LINK TL-WR941ND */
index fc38cf10267cc452328235f60cd05692d6025a6c..713a28fca78439270b7e91776d598894e7ea6508 100644 (file)
@@ -478,7 +478,7 @@ endef
 
 define Device/tl-wr841-v11
    $(Device/tplink-4mlzma)
-   BOARDNAME := TL-WR841N-v9
+   BOARDNAME := TL-WR841N-v11
    DEVICE_PROFILE := TLWR841
    TPLINK_HWID := 0x08410011
 endef