AA: ar71xx: fix bad RX sensitivity on newer TL-WDR4300 boards
authorGabor Juhos <juhosg@openwrt.org>
Tue, 28 Jan 2014 17:20:08 +0000 (17:20 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Tue, 28 Jan 2014 17:20:08 +0000 (17:20 +0000)
Backport of r39392.

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.

[Backport note: the 'ath79_wmac_set_ext_lna_gpio' function
is not available in AA, use the 'gpio_request_one' instead.]

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

target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wdr4300.c

index 7be29555ddabc04f3e6202269e09c7434ee7a41a..ea4b1c83bdcf38121d3f784156f7cb1cad1753f4 100644 (file)
@@ -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
 
@@ -152,6 +155,13 @@ static void __init wdr4300_setup(void)
                                        ARRAY_SIZE(wdr4300_gpio_keys),
                                        wdr4300_gpio_keys);
 
+       gpio_request_one(WDR4300_GPIO_EXTERNAL_LNA0,
+                        GPIOF_OUT_INIT_HIGH | GPIOF_EXPORT_DIR_FIXED,
+                        "external LNA0");
+       gpio_request_one(WDR4300_GPIO_EXTERNAL_LNA1,
+                        GPIOF_OUT_INIT_HIGH | GPIOF_EXPORT_DIR_FIXED,
+                        "external LNA1");
+
        ath79_init_mac(tmpmac, mac, -1);
        ath79_register_wmac(art + WDR4300_WMAC_CALDATA_OFFSET, tmpmac);