bcm53xx: add support for Luxul FullMAC WiFi devices
authorDan Haab <dan.haab@legrand.com>
Mon, 6 Apr 2020 23:14:39 +0000 (16:14 -0700)
committerRafał Miłecki <rafal@milecki.pl>
Tue, 7 Apr 2020 13:51:11 +0000 (15:51 +0200)
This prepares support for models XAP-1610 and XWR-3150. Flashing
requires using Luxul firmware version:
1) 8.1.0 or newer for XAP-1610
2) 6.4.0 or newer for XWR-3150
and uploading firmware using "Firmware Update" web UI page.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit c459a6bf482f5afc4746a4a108a143e9194cd59d)

target/linux/bcm53xx/base-files/etc/board.d/02_network
target/linux/bcm53xx/image/Makefile

index f86f12407ffb489f80a7be515fd39768c027b864..b3d614d6a2b64d088af52249c9ef0a320865d7af 100755 (executable)
@@ -36,6 +36,15 @@ bcm53xx_setup_interfaces()
                ucidef_add_switch "switch0" \
                        "0:wan" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5@eth0"
                ;;
                ucidef_add_switch "switch0" \
                        "0:wan" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5@eth0"
                ;;
+       luxul,xap-1610-v1)
+               ucidef_add_switch "switch0" \
+                       "0:lan" "1:lan" "5@eth0"
+               ucidef_set_interface_lan "eth0.1" "dhcp"
+               ;;
+       luxul,xwr-3150-v1)
+               ucidef_add_switch "switch0" \
+                       "0:lan:1" "1:lan:2" "2:lan:3" "3:lan:4" "4:wan" "5@eth0"
+               ;;
        phicomm,k3)
                ucidef_add_switch "switch0" \
                        "0:lan" "1:lan" "2:lan" "3:wan" "5@eth0"
        phicomm,k3)
                ucidef_add_switch "switch0" \
                        "0:lan" "1:lan" "2:lan" "3:wan" "5@eth0"
@@ -87,20 +96,28 @@ bcm53xx_setup_macs()
        case "$board" in
        asus,rt-ac87u)
                etXmacaddr=$(nvram get et1macaddr)
        case "$board" in
        asus,rt-ac87u)
                etXmacaddr=$(nvram get et1macaddr)
+               offset=1
                ;;
        dlink,dir-885l | \
        netgear,r7900 | \
        netgear,r8000 | \
        netgear,r8500)
                etXmacaddr=$(nvram get et2macaddr)
                ;;
        dlink,dir-885l | \
        netgear,r7900 | \
        netgear,r8000 | \
        netgear,r8500)
                etXmacaddr=$(nvram get et2macaddr)
+               offset=1
+               ;;
+       luxul,xwr-3100v1 | \
+       luxul,xwr-3150-v1)
+               etXmacaddr=$(nvram get et0macaddr)
+               offset=5
                ;;
        *)
                etXmacaddr=$(nvram get et0macaddr)
                ;;
        *)
                etXmacaddr=$(nvram get et0macaddr)
+               offset=1
                ;;
        esac
 
        # If WAN MAC isn't explicitly set, calculate it using base MAC as reference.
                ;;
        esac
 
        # If WAN MAC isn't explicitly set, calculate it using base MAC as reference.
-       [ -z "$wan_macaddr" -a -n "$etXmacaddr" ] && wan_macaddr=$(macaddr_add "$etXmacaddr" 1)
+       [ -z "$wan_macaddr" -a -n "$etXmacaddr" ] && wan_macaddr=$(macaddr_add "$etXmacaddr" $offset)
 
        [ -n "$wan_macaddr" ] && ucidef_set_interface_macaddr "wan" "$wan_macaddr"
 }
 
        [ -n "$wan_macaddr" ] && ucidef_set_interface_macaddr "wan" "$wan_macaddr"
 }
index 3946b47032981f4e8adb5d5945719bf56f4afaaf..f2dd405aa243d6de24c0c1221e436ecdee4d06b4 100644 (file)
@@ -280,6 +280,15 @@ define Device/luxul-abr-4500
 endef
 TARGET_DEVICES += luxul-abr-4500
 
 endef
 TARGET_DEVICES += luxul-abr-4500
 
+define Device/luxul-xap-1610
+  $(Device/luxul)
+  DEVICE_TITLE := Luxul XAP-1610
+  DEVICE_PACKAGES := $(BRCMFMAC_4366C0)
+  IMAGE/lxl := append-rootfs | trx-serial | luxul-lxl
+  LUXUL_BOARD := XAP-1610
+endef
+TARGET_DEVICES += luxul-xap-1610
+
 define Device/luxul-xbr-4500
   $(Device/luxul)
   DEVICE_TITLE := Luxul XBR-4500
 define Device/luxul-xbr-4500
   $(Device/luxul)
   DEVICE_TITLE := Luxul XBR-4500
@@ -288,6 +297,15 @@ define Device/luxul-xbr-4500
 endef
 TARGET_DEVICES += luxul-xbr-4500
 
 endef
 TARGET_DEVICES += luxul-xbr-4500
 
+define Device/luxul-xwr-3150
+  $(Device/luxul)
+  DEVICE_TITLE := Luxul XWR-3150
+  DEVICE_PACKAGES := $(BRCMFMAC_4366C0) $(USB3_PACKAGES)
+  DEVICE_DTS := bcm47094-luxul-xwr-3150-v1
+  LUXUL_BOARD := XWR-3150
+endef
+TARGET_DEVICES += luxul-xwr-3150
+
 define Device/netgear
   IMAGES := chk
   IMAGE/chk := append-ubi | trx-nand | netgear-chk
 define Device/netgear
   IMAGES := chk
   IMAGE/chk := append-ubi | trx-nand | netgear-chk