ar71xx: add support for the TP-LINK TL-WR941ND v5
This device is very similar to the TL-WR841N v8, only two LED GPIOs are different. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> SVN-Revision: 44255
This commit is contained in:
parent
a63e94426d
commit
cde2225c7c
9 changed files with 77 additions and 7 deletions
|
@ -226,7 +226,8 @@ get_status_led() {
|
||||||
tl-wr841n-v8 | \
|
tl-wr841n-v8 | \
|
||||||
tl-wa830re-v2 | \
|
tl-wa830re-v2 | \
|
||||||
tl-wr842n-v2 | \
|
tl-wr842n-v2 | \
|
||||||
tl-wr941nd)
|
tl-wr941nd | \
|
||||||
|
tl-wr941nd-v5)
|
||||||
status_led="tp-link:green:system"
|
status_led="tp-link:green:system"
|
||||||
;;
|
;;
|
||||||
archer-c5 | \
|
archer-c5 | \
|
||||||
|
|
|
@ -370,7 +370,8 @@ tl-wr741nd-v4)
|
||||||
ucidef_set_led_wlan "wlan" "WLAN" "tp-link:green:wlan" "phy0tpt"
|
ucidef_set_led_wlan "wlan" "WLAN" "tp-link:green:wlan" "phy0tpt"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
tl-wr841n-v8)
|
tl-wr841n-v8 | \
|
||||||
|
tl-wr941nd-v5)
|
||||||
ucidef_set_led_netdev "wan" "WAN" "tp-link:green:wan" "eth0"
|
ucidef_set_led_netdev "wan" "WAN" "tp-link:green:wan" "eth0"
|
||||||
ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x04"
|
ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x04"
|
||||||
ucidef_set_led_switch "lan2" "LAN2" "tp-link:green:lan2" "switch0" "0x08"
|
ucidef_set_led_switch "lan2" "LAN2" "tp-link:green:lan2" "switch0" "0x08"
|
||||||
|
|
|
@ -220,6 +220,7 @@ smart-300 |\
|
||||||
tl-mr3420-v2 |\
|
tl-mr3420-v2 |\
|
||||||
tl-wr841n-v8 |\
|
tl-wr841n-v8 |\
|
||||||
tl-wr842n-v2 |\
|
tl-wr842n-v2 |\
|
||||||
|
tl-wr941nd-v5 |\
|
||||||
wnr2000-v3 |\
|
wnr2000-v3 |\
|
||||||
wnr2000-v4 |\
|
wnr2000-v4 |\
|
||||||
wnr2200 |\
|
wnr2200 |\
|
||||||
|
|
|
@ -702,6 +702,9 @@ ar71xx_board_detect() {
|
||||||
*TL-WR941ND)
|
*TL-WR941ND)
|
||||||
name="tl-wr941nd"
|
name="tl-wr941nd"
|
||||||
;;
|
;;
|
||||||
|
*"TL-WR941N/ND v5")
|
||||||
|
name="tl-wr941nd-v5"
|
||||||
|
;;
|
||||||
*"TL-WR703N v1")
|
*"TL-WR703N v1")
|
||||||
name="tl-wr703n"
|
name="tl-wr703n"
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -333,6 +333,7 @@ platform_check_image() {
|
||||||
tl-wr841n-v9 | \
|
tl-wr841n-v9 | \
|
||||||
tl-wr842n-v2 | \
|
tl-wr842n-v2 | \
|
||||||
tl-wr941nd | \
|
tl-wr941nd | \
|
||||||
|
tl-wr941nd-v5 | \
|
||||||
tl-wr1041n-v2 | \
|
tl-wr1041n-v2 | \
|
||||||
tl-wr1043nd | \
|
tl-wr1043nd | \
|
||||||
tl-wr1043nd-v2 | \
|
tl-wr1043nd-v2 | \
|
||||||
|
|
|
@ -38,6 +38,15 @@
|
||||||
#define TL_MR3420V2_GPIO_LED_3G 11
|
#define TL_MR3420V2_GPIO_LED_3G 11
|
||||||
#define TL_MR3420V2_GPIO_USB_POWER 4
|
#define TL_MR3420V2_GPIO_USB_POWER 4
|
||||||
|
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_WLAN 13
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_QSS 15
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_WAN 18
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_LAN1 19
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_LAN2 20
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_LAN3 2
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_LAN4 3
|
||||||
|
#define TL_WR941NDV5_GPIO_LED_SYSTEM 14
|
||||||
|
|
||||||
#define TL_WR841NV8_KEYS_POLL_INTERVAL 20 /* msecs */
|
#define TL_WR841NV8_KEYS_POLL_INTERVAL 20 /* msecs */
|
||||||
#define TL_WR841NV8_KEYS_DEBOUNCE_INTERVAL (3 * TL_WR841NV8_KEYS_POLL_INTERVAL)
|
#define TL_WR841NV8_KEYS_DEBOUNCE_INTERVAL (3 * TL_WR841NV8_KEYS_POLL_INTERVAL)
|
||||||
|
|
||||||
|
@ -127,6 +136,42 @@ static struct gpio_keys_button tl_mr3420v2_gpio_keys[] __initdata = {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct gpio_led tl_wr941nd_v5_leds_gpio[] __initdata = {
|
||||||
|
{
|
||||||
|
.name = "tp-link:green:lan1",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_LAN1,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:lan2",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_LAN2,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:lan3",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_LAN3,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:lan4",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_LAN4,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:qss",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_QSS,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:system",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_SYSTEM,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:wan",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_WAN,
|
||||||
|
.active_low = 1,
|
||||||
|
}, {
|
||||||
|
.name = "tp-link:green:wlan",
|
||||||
|
.gpio = TL_WR941NDV5_GPIO_LED_WLAN,
|
||||||
|
.active_low = 1,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
static void __init tl_ap123_setup(void)
|
static void __init tl_ap123_setup(void)
|
||||||
{
|
{
|
||||||
u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00);
|
u8 *mac = (u8 *) KSEG1ADDR(0x1f01fc00);
|
||||||
|
@ -223,3 +268,19 @@ static void __init tl_mr3420v2_setup(void)
|
||||||
|
|
||||||
MIPS_MACHINE(ATH79_MACH_TL_MR3420_V2, "TL-MR3420-v2", "TP-LINK TL-MR3420 v2",
|
MIPS_MACHINE(ATH79_MACH_TL_MR3420_V2, "TL-MR3420-v2", "TP-LINK TL-MR3420 v2",
|
||||||
tl_mr3420v2_setup);
|
tl_mr3420v2_setup);
|
||||||
|
|
||||||
|
|
||||||
|
static void __init tl_wr941nd_v5_setup(void)
|
||||||
|
{
|
||||||
|
tl_ap123_setup();
|
||||||
|
|
||||||
|
ath79_register_leds_gpio(-1, ARRAY_SIZE(tl_wr941nd_v5_leds_gpio),
|
||||||
|
tl_wr941nd_v5_leds_gpio);
|
||||||
|
|
||||||
|
ath79_register_gpio_keys_polled(1, TL_WR841NV8_KEYS_POLL_INTERVAL,
|
||||||
|
ARRAY_SIZE(tl_wr841n_v8_gpio_keys),
|
||||||
|
tl_wr841n_v8_gpio_keys);
|
||||||
|
}
|
||||||
|
|
||||||
|
MIPS_MACHINE(ATH79_MACH_TL_WR941ND_V5, "TL-WR941ND-v5", "TP-LINK TL-WR941N/ND v5",
|
||||||
|
tl_wr941nd_v5_setup);
|
||||||
|
|
|
@ -1409,6 +1409,7 @@ $(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA801NV2,tl-wa801nd-v2,TL-WA801
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA850,tl-wa850re-v1,TL-WA850RE,ttyS0,115200,0x08500001,1,4Mlzma))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA850,tl-wa850re-v1,TL-WA850RE,ttyS0,115200,0x08500001,1,4Mlzma))
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA860,tl-wa860re-v1,TL-WA860RE,ttyS0,115200,0x08600001,1,4Mlzma))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA860,tl-wa860re-v1,TL-WA860RE,ttyS0,115200,0x08600001,1,4Mlzma))
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA901NV3,tl-wa901nd-v3,TL-WA901ND-v3,ttyS0,115200,0x09010003,1,4Mlzma))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWA901NV3,tl-wa901nd-v3,TL-WA901ND-v3,ttyS0,115200,0x09010003,1,4Mlzma))
|
||||||
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR941NV5,tl-wr941nd-v5,TL-WR941ND-v5,ttyS0,115200,0x09410005,1,4Mlzma))
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR941NV6,tl-wr941nd-v6,TL-WDR3500,ttyS0,115200,0x09410006,1,4Mlzma))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR941NV6,tl-wr941nd-v6,TL-WDR3500,ttyS0,115200,0x09410006,1,4Mlzma))
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1041,tl-wr1041n-v2,TL-WR1041N-v2,ttyS0,115200,0x10410002,1,4Mlzma))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1041,tl-wr1041n-v2,TL-WR1041N-v2,ttyS0,115200,0x10410002,1,4Mlzma))
|
||||||
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1043V2,tl-wr1043nd-v2,TL-WR1043ND-v2,ttyS0,115200,0x10430002,1,8M))
|
$(eval $(call SingleProfile,TPLINK-LZMA,64kraw,TLWR1043V2,tl-wr1043nd-v2,TL-WR1043ND-v2,ttyS0,115200,0x10430002,1,8M))
|
||||||
|
@ -1490,7 +1491,7 @@ $(eval $(call MultiProfile,TLWR743,TLWR743NV1 TLWR743NV2))
|
||||||
$(eval $(call MultiProfile,TLWR841,TLWR841NV15 TLWR841NV3 TLWR841NV5 TLWR841NV7 TLWR841NV8 TLWR841NV9 TLWR847NV8))
|
$(eval $(call MultiProfile,TLWR841,TLWR841NV15 TLWR841NV3 TLWR841NV5 TLWR841NV7 TLWR841NV8 TLWR841NV9 TLWR847NV8))
|
||||||
$(eval $(call MultiProfile,TLWR842,TLWR842V1 TLWR842V2))
|
$(eval $(call MultiProfile,TLWR842,TLWR842V1 TLWR842V2))
|
||||||
$(eval $(call MultiProfile,TLWR843,TLWR843NV1))
|
$(eval $(call MultiProfile,TLWR843,TLWR843NV1))
|
||||||
$(eval $(call MultiProfile,TLWR941,TLWR941NV2 TLWR941NV3 TLWR941NV4 TLWR941NV6))
|
$(eval $(call MultiProfile,TLWR941,TLWR941NV2 TLWR941NV3 TLWR941NV4 TLWR941NV5 TLWR941NV6))
|
||||||
$(eval $(call MultiProfile,TLWR1043,TLWR1043V1 TLWR1043V2))
|
$(eval $(call MultiProfile,TLWR1043,TLWR1043V1 TLWR1043V2))
|
||||||
$(eval $(call MultiProfile,TLWDR4300,TLWDR3500V1 TLWDR3600V1 TLWDR4300V1 TLWDR4300V1IL TLWDR4310V1 MW4530RV1))
|
$(eval $(call MultiProfile,TLWDR4300,TLWDR3500V1 TLWDR3600V1 TLWDR4300V1 TLWDR4300V1IL TLWDR4310V1 MW4530RV1))
|
||||||
$(eval $(call MultiProfile,TUBE2H,TUBE2H8M TUBE2H16M))
|
$(eval $(call MultiProfile,TUBE2H,TUBE2H8M TUBE2H16M))
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -16,22 +16,146 @@
|
@@ -16,22 +16,147 @@
|
||||||
|
|
||||||
enum ath79_mach_type {
|
enum ath79_mach_type {
|
||||||
ATH79_MACH_GENERIC = 0,
|
ATH79_MACH_GENERIC = 0,
|
||||||
|
@ -108,6 +108,7 @@
|
||||||
+ ATH79_MACH_TL_WR841N_V8, /* TP-LINK TL-WR841N/ND v8 */
|
+ ATH79_MACH_TL_WR841N_V8, /* TP-LINK TL-WR841N/ND v8 */
|
||||||
+ ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */
|
+ ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */
|
||||||
+ ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
|
+ ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
|
||||||
|
+ ATH79_MACH_TL_WR941ND_V5, /* TP-LINK TL-WR941ND v5 */
|
||||||
ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
|
ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
|
||||||
ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
|
ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
|
||||||
+ ATH79_MACH_UBNT_LSSR71, /* Ubiquiti LS-SR71 */
|
+ ATH79_MACH_UBNT_LSSR71, /* Ubiquiti LS-SR71 */
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
--- a/arch/mips/ath79/machtypes.h
|
--- a/arch/mips/ath79/machtypes.h
|
||||||
+++ b/arch/mips/ath79/machtypes.h
|
+++ b/arch/mips/ath79/machtypes.h
|
||||||
@@ -142,6 +142,7 @@ enum ath79_mach_type {
|
@@ -143,6 +143,7 @@ enum ath79_mach_type {
|
||||||
ATH79_MACH_TL_WR841N_V9, /* TP-LINK TL-WR841N/ND v9 */
|
|
||||||
ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */
|
ATH79_MACH_TL_WR842N_V2, /* TP-LINK TL-WR842N/ND v2 */
|
||||||
ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
|
ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
|
||||||
|
ATH79_MACH_TL_WR941ND_V5, /* TP-LINK TL-WR941ND v5 */
|
||||||
+ ATH79_MACH_TUBE2H, /* Alfa Network Tube2H */
|
+ ATH79_MACH_TUBE2H, /* Alfa Network Tube2H */
|
||||||
ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
|
ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
|
||||||
ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
|
ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
|
||||||
|
|
Loading…
Reference in a new issue