Thank you for your answer. We will try to solve this issue with our own forces.

Kind regards
Yury Shvedov

On 03/11/2015 01:46 PM, Matthias Schiffer wrote:
No, unfortunately, the WLAN problem still exists.

My patch made OpenWrt generate images which can be flashed the usual way
from the stock firmware. In addition, it added support to the OpenWrt
kernel and userspace, so that
- the device is identified correctly in /proc/cpuinfo and /tmp/sysinfo
- LEDs work correctly
- sysupgrade works

I can't really say much about the WLAN problem. I have a test device
here, but I currently don't have much spare time for extensive
experiments (and if it is a WLAN driver issue, I probably can't help much).

Regards,
Matthias


On 03/11/2015 09:54 AM, Shvedov Yury wrote:
Hi,

does your patch fix this problem:
https://lists.openwrt.org/pipermail/openwrt-devel/2014-September/028103.html
?
As I checked, it doesn't, so what exactly your patch do? Does it only
make the leds to work properly?

Kind regards
Yury Shvedov

On 12/30/2014 06:01 AM, Matthias Schiffer wrote:
Signed-off-by: Matthias Schiffer <mschif...@universe-factory.net>
---
   target/linux/ar71xx/base-files/etc/diag.sh         |  3 ++
   target/linux/ar71xx/base-files/lib/ar71xx.sh       |  3 ++
   .../ar71xx/base-files/lib/upgrade/platform.sh      |  2 +
   target/linux/ar71xx/image/Makefile                 |  3 +-
   .../610-MIPS-ath79-openwrt-machines.patch          |  3 +-
   .../patches-3.14/616-MIPS-ath79-ubnt-xw.patch      | 61
+++++++++++++++++++++-
   6 files changed, 72 insertions(+), 3 deletions(-)

diff --git a/target/linux/ar71xx/base-files/etc/diag.sh
b/target/linux/ar71xx/base-files/etc/diag.sh
index 06b96a3..30e4aeb 100755
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -254,6 +254,9 @@ get_status_led() {
       uap-pro)
           status_led="ubnt:white:dome"
           ;;
+    unifi-outdoor-plus)
+        status_led="ubnt:white:front"
+        ;;
       airgateway)
           status_led="ubnt:white:status"
           ;;
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh
b/target/linux/ar71xx/base-files/lib/ar71xx.sh
index 9b056e9..a12101a 100755
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
@@ -732,6 +732,9 @@ ar71xx_board_detect() {
       *"UniFiAP Outdoor")
           name="unifi-outdoor"
           ;;
+    *"UniFiAP Outdoor+")
+        name="unifi-outdoor-plus"
+        ;;
       *WP543)
           name="wp543"
           ;;
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index 6dabf4e..2752729 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -368,6 +368,7 @@ platform_check_image() {
           return 1
           ;;
   +    unifi-outdoor-plus | \
       uap-pro)
           [ "$magic_long" != "19852003" ] && {
               echo "Invalid image type."
@@ -483,6 +484,7 @@ platform_do_upgrade() {
       om5p)
           platform_do_upgrade_openmesh "$ARGV"
           ;;
+    unifi-outdoor-plus | \
       uap-pro)
           MTD_CONFIG_ARGS="-s 0x180000"
           default_do_upgrade "$ARGV"
diff --git a/target/linux/ar71xx/image/Makefile
b/target/linux/ar71xx/image/Makefile
index 18c9637..3eb2f07 100644
--- a/target/linux/ar71xx/image/Makefile
+++ b/target/linux/ar71xx/image/Makefile
@@ -1333,6 +1333,7 @@ $(eval $(call
SingleProfile,TPLINK-LZMA,64kraw,SMART-300,smart-300,SMART-300,tty
   $(eval $(call
SingleProfile,TPLINK-LZMA,64kraw,OOLITE,oolite,GS-OOLITE,ttyATH0,115200,0x3C000101,1,16Mlzma))

     $(eval $(call
SingleProfile,UAPPRO,64k,UAPPRO,ubnt-uap-pro,UAP-PRO,ttyS0,115200,BZ,BZ,ar934x))

+$(eval $(call
SingleProfile,UAPPRO,64k,UBNTUNIFIOUTDOORPLUS,ubnt-unifi-outdoor-plus,UBNT-UOP,ttyS0,115200,BZ,BZ,ar7240))

     $(eval $(call
SingleProfile,UBDEV,64kraw,UBDEV01,ubdev01,UBNT-UF,ttyS0,115200,XM,XM,ar7240))

   @@ -1396,7 +1397,7 @@ $(eval $(call MultiProfile,TLWR941,TLWR941NV2
TLWR941NV3 TLWR941NV4 TLWR941NV6))
   $(eval $(call MultiProfile,TLWR1043,TLWR1043V1 TLWR1043V2))
   $(eval $(call MultiProfile,TLWDR4300,TLWDR3500V1 TLWDR3600V1
TLWDR4300V1 TLWDR4300V1IL TLWDR4310V1 MW4530RV1))
   $(eval $(call MultiProfile,TUBE2H,TUBE2H8M TUBE2H16M))
-$(eval $(call MultiProfile,UBNT,UBNTAIRROUTER UBNTRS UBNTRSPRO
UBNTLSSR71 UBNTBULLETM UBNTROCKETM UBNTNANOM UBNTNANOMXW UBNTLOCOXW
UBNTUNIFI UBNTUNIFIOUTDOOR UAPPRO UBNTAIRGW))
+$(eval $(call MultiProfile,UBNT,UBNTAIRROUTER UBNTRS UBNTRSPRO
UBNTLSSR71 UBNTBULLETM UBNTROCKETM UBNTNANOM UBNTNANOMXW UBNTLOCOXW
UBNTUNIFI UBNTUNIFIOUTDOOR UBNTUNIFIOUTDOORPLUS UAPPRO UBNTAIRGW))
   $(eval $(call MultiProfile,WNDR3700,WNDR3700V1 WNDR3700V2 WNDR3800
WNDR3800CH WNDRMAC WNDRMACV2))
   $(eval $(call MultiProfile,WNR612V2,REALWNR612V2 N150R))
   $(eval $(call MultiProfile,WP543,WP543_2M WP543_4M WP543_8M WP543_16M))
diff --git
a/target/linux/ar71xx/patches-3.14/610-MIPS-ath79-openwrt-machines.patch
b/target/linux/ar71xx/patches-3.14/610-MIPS-ath79-openwrt-machines.patch
index 4ce9268..b01c5de 100644
---
a/target/linux/ar71xx/patches-3.14/610-MIPS-ath79-openwrt-machines.patch
+++
b/target/linux/ar71xx/patches-3.14/610-MIPS-ath79-openwrt-machines.patch
@@ -1,6 +1,6 @@
   --- a/arch/mips/ath79/machtypes.h
   +++ b/arch/mips/ath79/machtypes.h
-@@ -16,22 +16,145 @@
+@@ -16,22 +16,146 @@
       enum ath79_mach_type {
        ATH79_MACH_GENERIC = 0,
@@ -119,6 +119,7 @@
        ATH79_MACH_UBNT_UAP_PRO,    /* Ubiquiti UniFi AP Pro */
        ATH79_MACH_UBNT_UNIFI,         /* Ubiquiti Unifi */
        ATH79_MACH_UBNT_UNIFI_OUTDOOR,    /* Ubiquiti UnifiAP Outdoor */
++    ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, /* Ubiquiti UnifiAP Outdoor+ */
        ATH79_MACH_UBNT_XM,        /* Ubiquiti Networks XM board rev
1.0 */
   +    ATH79_MACH_WHR_G301N,        /* Buffalo WHR-G301N */
   +    ATH79_MACH_WHR_HP_G300N,    /* Buffalo WHR-HP-G300N */
diff --git
a/target/linux/ar71xx/patches-3.14/616-MIPS-ath79-ubnt-xw.patch
b/target/linux/ar71xx/patches-3.14/616-MIPS-ath79-ubnt-xw.patch
index 3675518..8e16697 100644
--- a/target/linux/ar71xx/patches-3.14/616-MIPS-ath79-ubnt-xw.patch
+++ b/target/linux/ar71xx/patches-3.14/616-MIPS-ath79-ubnt-xw.patch
@@ -1,6 +1,65 @@
   --- a/arch/mips/ath79/mach-ubnt-xm.c
   +++ b/arch/mips/ath79/mach-ubnt-xm.c
-@@ -332,3 +332,78 @@ static void __init ubnt_uap_pro_setup(vo
+@@ -186,6 +186,19 @@ static struct gpio_led ubnt_unifi_outdoo
+     }
+ };
+
++static struct gpio_led ubnt_unifi_outdoor_plus_leds_gpio[]
__initdata = {
++    {
++        .name        = "ubnt:white:front",
++        .gpio        = 1,
++        .active_low    = 0,
++    }, {
++        .name        = "ubnt:blue:front",
++        .gpio        = 0,
++        .active_low    = 0,
++    }
++};
++
++
+ static void __init ubnt_unifi_setup(void)
+ {
+     u8 *mac = (u8 *) KSEG1ADDR(0x1fff0000);
+@@ -245,6 +258,38 @@ MIPS_MACHINE(ATH79_MACH_UBNT_UNIFI_OUTDO
+          "Ubiquiti UniFiAP Outdoor",
+          ubnt_unifi_outdoor_setup);
+
++
++static void __init ubnt_unifi_outdoor_plus_setup(void)
++{
++    u8 *mac1 = (u8 *) KSEG1ADDR(0x1fff0000);
++    u8 *mac2 = (u8 *) KSEG1ADDR(0x1fff0000 + ETH_ALEN);
++    u8 *ee = (u8 *) KSEG1ADDR(0x1fff1000);
++
++    ath79_register_m25p80(NULL);
++
++    ath79_register_mdio(0, ~(UBNT_UNIFIOD_PRI_PHYMASK |
++                 UBNT_UNIFIOD_2ND_PHYMASK));
++
++    ath79_init_mac(ath79_eth0_data.mac_addr, mac1, 0);
++    ath79_init_mac(ath79_eth1_data.mac_addr, mac2, 0);
++    ath79_register_eth(0);
++    ath79_register_eth(1);
++
++    ap91_pci_init(ee, NULL);
++
++    ath79_register_leds_gpio(-1,
ARRAY_SIZE(ubnt_unifi_outdoor_plus_leds_gpio),
++                 ubnt_unifi_outdoor_plus_leds_gpio);
++
++    ath79_register_gpio_keys_polled(-1, UBNT_XM_KEYS_POLL_INTERVAL,
++                                        ARRAY_SIZE(ubnt_xm_gpio_keys),
++                                        ubnt_xm_gpio_keys);
++}
++
++MIPS_MACHINE(ATH79_MACH_UBNT_UNIFI_OUTDOOR_PLUS, "UBNT-UOP",
++         "Ubiquiti UniFiAP Outdoor+",
++         ubnt_unifi_outdoor_plus_setup);
++
++
+ static struct gpio_led ubnt_uap_pro_gpio_leds[] __initdata = {
+     {
+         .name        = "ubnt:white:dome",
+@@ -332,3 +377,78 @@ static void __init ubnt_uap_pro_setup(vo
    MIPS_MACHINE(ATH79_MACH_UBNT_UAP_PRO, "UAP-PRO", "Ubiquiti UniFi AP
Pro",
             ubnt_uap_pro_setup);
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to