From f85231257edd47dd0ac1e3075775c052199500b1 Mon Sep 17 00:00:00 2001
From: Gabor Juhos <juhosg@openwrt.org>
Date: Fri, 24 Jan 2014 17:40:17 +0000
Subject: [PATCH] ar71xx: fix bad RX sensitivity on newer TL-WDR4300 boards

On recent TL-WDR4300 boards the external LNAs of the 2.4GHz
interface are connected to GPIO lines. Because these GPIO
lines are disabled by default, the RX sensitivity of the
device is quite bad.

Setup the GPIOs of the external LNAs to fix the issue.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 39392
---
 target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c
index 4a0ae968f3..99ae80df9b 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c
@@ -37,6 +37,9 @@
 #define WDR4300_GPIO_BTN_WPS		16
 #define WDR4300_GPIO_BTN_RFKILL		17
 
+#define WDR4300_GPIO_EXTERNAL_LNA0	18
+#define WDR4300_GPIO_EXTERNAL_LNA1	19
+
 #define WDR4300_GPIO_USB1_POWER		22
 #define WDR4300_GPIO_USB2_POWER		21
 
@@ -162,6 +165,9 @@ static void __init wdr4300_setup(void)
 					ARRAY_SIZE(wdr4300_gpio_keys),
 					wdr4300_gpio_keys);
 
+	ath79_wmac_set_ext_lna_gpio(0, WDR4300_GPIO_EXTERNAL_LNA0);
+	ath79_wmac_set_ext_lna_gpio(1, WDR4300_GPIO_EXTERNAL_LNA1);
+
 	ath79_init_mac(tmpmac, mac, -1);
 	ath79_register_wmac(art + WDR4300_WMAC_CALDATA_OFFSET, tmpmac);
 
-- 
2.30.2