On 06.04.2020 20:26, m...@adrianschmutzler.de wrote:
-----Original Message-----
From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
On Behalf Of Dan Haab
Sent: Montag, 6. April 2020 20:20
To: openwrt-devel@lists.openwrt.org
Cc: Dan Haab <dan.h...@legrand.com>
Subject: [OpenWrt-Devel] [PATCH] bcm53xx: add support for Luxul FullMAC
WiFi devices

From: Dan Haab <dan.h...@legrand.com>

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.h...@legrand.com>
---
  .../bcm53xx/base-files/etc/board.d/02_network | 22
++++++++++++++++++-
  target/linux/bcm53xx/image/Makefile           | 18 +++++++++++++++
  2 files changed, 39 insertions(+), 1 deletion(-)

diff --git a/target/linux/bcm53xx/base-files/etc/board.d/02_network
b/target/linux/bcm53xx/base-files/etc/board.d/02_network
index f86f12407f..9256cbdc54 100755
--- a/target/linux/bcm53xx/base-files/etc/board.d/02_network
+++ b/target/linux/bcm53xx/base-files/etc/board.d/02_network
@@ -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"
                ;;
+       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"
@@ -100,7 +109,18 @@ bcm53xx_setup_macs()
        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" ] && {
+               local offset=1
+
+               case "$board" in
+               luxul,xwr-3100v1 | \
+               luxul,xwr-3150-v1)
+                       offset=5
+                       ;;
+               esac
+
+               wan_macaddr=$(macaddr_add "$etXmacaddr" $offset)
+       }

This adds another level of nesting. I'd prefer if you just added your devices 
to the case directly above and just use

[ -n "$wan_macaddr" ] || wan_macaddr=$(macaddr_add "$etXmacaddr" 5)

for them there.

We cannot do that, because the lower
[ -z "$wan_macaddr" -a -n "$etXmacaddr" ] && wan_macaddr=$(macaddr_add 
"$etXmacaddr" 1)
will overwrite what Luxul-specific one did.

What about having offset set by device specific code? Like:


etXmacaddr=$(nvram get et0macaddr)
offset=1
case "$board" in
asus,rt-ac87u)
        etXmacaddr=$(nvram get et1macaddr)
        ;;
dlink,dir-885l | \
netgear,r7900 | \
netgear,r8000 | \
netgear,r8500)
        etXmacaddr=$(nvram get et2macaddr)
        ;;
luxul,foo)
        offset=5
        ;;
esac


        [ -n "$wan_macaddr" ] && ucidef_set_interface_macaddr "wan"
"$wan_macaddr"
  }
diff --git a/target/linux/bcm53xx/image/Makefile
b/target/linux/bcm53xx/image/Makefile
index 610af03abe..b3ec1e99a2 100644
--- a/target/linux/bcm53xx/image/Makefile
+++ b/target/linux/bcm53xx/image/Makefile
@@ -291,6 +291,15 @@ define Device/luxul-abr-4500  endef
TARGET_DEVICES += luxul-abr-4500

+define Device/luxul-xap-1610
+  $(Device/luxul)
+  DEVICE_MODEL := 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_MODEL := XBR-4500
@@ -299,6 +308,15 @@ define Device/luxul-xbr-4500  endef
TARGET_DEVICES += luxul-xbr-4500

+define Device/luxul-xwr-3150

Could you add a -v1 here as well?

I see DTS file has "v1" in its name but does v2 exist at all?

If there is not v2 and it's not planned right now I'm OK with filename
witohut "v1".

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

Reply via email to