ar71xx: improve support for the My Net Wi-Fi Range Extender device
authorGabor Juhos <juhosg@openwrt.org>
Fri, 29 Nov 2013 20:18:44 +0000 (20:18 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Fri, 29 Nov 2013 20:18:44 +0000 (20:18 +0000)
This patch improves support for the device considerably.

1. The wifi didn't work in the initial release. This was because
the WMAC of the AR9340 is not connected to the antennas.
(However, it can pick up wifi signals, if they are strong enough!)
Instead there's a dedicated AR9300 chip on the same board, which
works.

2. Ethernet throughput is improved. iperf shows that the hardware
can sustain more than 200Mbit/s and no longer drops any packages
when the link is under load.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Patchwork: http://patchwork.openwrt.org/patch/4461/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38949

target/linux/ar71xx/files/arch/mips/ath79/mach-mynet-rext.c
target/linux/ar71xx/patches-3.10/632-MIPS-ath79-add-MyNet-Wifi-Range-Extender-support.patch

index d20dbe0..a3deed5 100644 (file)
@@ -153,10 +153,9 @@ static void __init mynet_rext_setup(void)
                                        ARRAY_SIZE(mynet_rext_gpio_keys),
                                        mynet_rext_gpio_keys);
 
-       mynet_rext_get_mac("wl0_hwaddr=", tmpmac);
-       ath79_register_wmac(art + MYNET_REXT_WMAC_CALDATA_OFFSET, tmpmac);
-
-       ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0);
+       ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_RGMII_GMAC0 |
+                                  AR934X_ETH_CFG_RXD_DELAY |
+                                  AR934X_ETH_CFG_RDV_DELAY);
 
        ath79_register_mdio(0, 0x0);
 
@@ -169,6 +168,10 @@ static void __init mynet_rext_setup(void)
        ath79_eth0_pll_data.pll_1000 = 0x0e000000; /* athrs_mac.c */
        ath79_eth0_data.mii_bus_dev = &ath79_mdio0_device.dev;
        ath79_register_eth(0);
+
+       /* WLAN */
+       mynet_rext_get_mac("wl0_hwaddr=", tmpmac);
+       ap91_pci_init(art + MYNET_REXT_WMAC_CALDATA_OFFSET, tmpmac);
 }
 
 MIPS_MACHINE(ATH79_MACH_MYNET_REXT, "MYNET-REXT",
index dfbff45..4eac333 100644 (file)
  obj-$(CONFIG_ATH79_MACH_NBG460N)      += mach-nbg460n.o
 --- a/arch/mips/ath79/Kconfig
 +++ b/arch/mips/ath79/Kconfig
-@@ -801,6 +801,16 @@ config ATH79_MACH_MYNET_N600
+@@ -801,6 +801,17 @@ config ATH79_MACH_MYNET_N600
        select ATH79_DEV_WMAC
        select ATH79_NVRAM
  
 +config ATH79_MACH_MYNET_REXT
 +      bool "WD My Net Wi-Fi Range Extender board support"
 +      select SOC_AR934X
++      select ATH79_DEV_AP9X_PCI if PCI
 +      select ATH79_DEV_ETH
 +      select ATH79_DEV_GPIO_BUTTONS
 +      select ATH79_DEV_LEDS_GPIO