[RFC/RFT,v2] Migrate subset of devices to ath79 target

Submitted by Adrian Schmutzler on March 15, 2020, 11:42 p.m.

Details

Message ID 20200315234205.64513-1-freifunk@adrianschmutzler.de
State Superseded
Headers show

Commit Message

Adrian Schmutzler March 15, 2020, 11:42 p.m.
This migrates an arbitrarily chosen subset of devices from generic
subtarget to ath79.

This requires some adjustments on the way:
- The board names and image names on ath79 contain the vendor name,
  where the former have it separated by a comma (tplink,cpe210-v2)
  and the latter use an underscore (tplink_cpe210-v2). It is
  guaranteed that this is the only difference between board and
  image names.
  Consequently, the ath79 devices will use their full board also
  in our firmware. For file names (the network.*), the pattern with
  underscore is used instead and thus some sed commands have been
  introduced.
  While at it, fix that for the WDR4900 v1 as well.
- Due to a different switch driver, the startup of ethernet devices
  is altered, which leads to eth0 and eth1 being swapped for some ath79
  devices compared to ar71xx. This has been adjusted for SWITCHDEV/WANDEV
  and MAC address setup.
- Since we have direct support for the AC Mesh now, use the proper
  name instead of the AC Lite image.

This patch is intended for testing/commenting only. There are further
devices that can be migrated and were just not chosen here.

Note that this has just been written in code and not even build-tested.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
 bsp/ar71xx/.config                            | 28 ---------
 bsp/ath79/.config                             | 57 +++++++++++++++++++
 bsp/board_ar71xx.bsp                          | 16 +-----
 bsp/board_ath79.bsp                           | 18 ++++++
 .../fff-babeld/files/etc/gateway.d/40-babel   |  2 +-
 .../files/etc/uci-defaults/15-fff-boardname   | 17 ------
 .../fff-gateway/files/etc/gateway.d/20-vlan   |  2 +-
 .../files/etc/gateway.d/30-network-client     |  2 +-
 .../fff-network/ar71xx/network.archer-c25-v1  | 10 ----
 .../network.glinet_gl-ar150}                  |  4 +-
 .../fff/fff-network/ath79/network.mode        | 30 ++++++++++
 .../ath79/network.tplink_archer-c25-v1        | 10 ++++
 .../network.tplink_archer-c7-v2}              |  0
 .../network.tplink_archer-c7-v5}              |  0
 .../network.tplink_cpe210-v2}                 |  0
 .../network.tplink_cpe210-v3}                 |  0
 .../network.tplink_tl-wdr3600-v1}             |  0
 .../network.tplink_tl-wdr4300-v1}             |  0
 .../network.tplink_tl-wr1043n-v5}             |  2 +-
 .../network.tplink_tl-wr1043nd-v1}            |  0
 .../network.tplink_tl-wr1043nd-v2}            |  0
 .../network.tplink_tl-wr1043nd-v3}            |  0
 .../network.tplink_tl-wr1043nd-v4}            |  2 +-
 .../network.ubnt_unifiac-mesh}                |  0
 .../files/usr/sbin/configurenetwork           |  2 +-
 ...dr4900-v1 => network.tplink_tl-wdr4900-v1} |  0
 .../fff/fff-support/files/usr/sbin/show_info  |  2 +-
 .../fff-web/files/www/ssl/cgi-bin/ports.html  |  2 +-
 .../files/etc/gateway.d/50-wireguard          |  2 +-
 .../etc/uci-defaults/24b-config-wireless      |  6 +-
 30 files changed, 129 insertions(+), 85 deletions(-)
 create mode 100644 bsp/ath79/.config
 create mode 100644 bsp/board_ath79.bsp
 delete mode 100644 src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
 rename src/packages/fff/fff-network/{ar71xx/network.gl-ar150 => ath79/network.glinet_gl-ar150} (88%)
 create mode 100644 src/packages/fff/fff-network/ath79/network.mode
 create mode 100644 src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
 rename src/packages/fff/fff-network/{ar71xx/network.archer-c7-v2 => ath79/network.tplink_archer-c7-v2} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.archer-c7-v5 => ath79/network.tplink_archer-c7-v5} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.cpe210-v2 => ath79/network.tplink_cpe210-v2} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.cpe210-v3 => ath79/network.tplink_cpe210-v3} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wdr3600-v1 => ath79/network.tplink_tl-wdr3600-v1} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wdr4300-v1 => ath79/network.tplink_tl-wdr4300-v1} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043n-v5 => ath79/network.tplink_tl-wr1043n-v5} (83%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v1 => ath79/network.tplink_tl-wr1043nd-v1} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v2 => ath79/network.tplink_tl-wr1043nd-v2} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v3 => ath79/network.tplink_tl-wr1043nd-v3} (100%)
 rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v4 => ath79/network.tplink_tl-wr1043nd-v4} (83%)
 rename src/packages/fff/fff-network/{ar71xx/network.ubnt-unifiac-lite => ath79/network.ubnt_unifiac-mesh} (100%)
 rename src/packages/fff/fff-network/mpc85xx/{network.tl-wdr4900-v1 => network.tplink_tl-wdr4900-v1} (100%)

Patch hide | download patch | download mbox

diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config
index 6c2c730d..7d11b318 100644
--- a/bsp/ar71xx/.config
+++ b/bsp/ar71xx/.config
@@ -4,26 +4,14 @@ 
 CONFIG_TARGET_ar71xx=y
 CONFIG_TARGET_ar71xx_tiny=y
 CONFIG_TARGET_MULTI_PROFILE=y
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v2=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v2=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v5=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-220-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-220-v1="-rssileds"
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v2=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-v2="-rssileds"
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v3=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-v3="-rssileds"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe510-520-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe510-520-v1="-rssileds"
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_gl-ar150=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_gl-ar150=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-mr3020-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-mr3020-v1="-uboot-envtools -kmod-usb-core -kmod-usb2 -kmod-usb-ledtrig-usbport"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wa850re-v1=y
@@ -34,22 +22,8 @@  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wa901nd-v2=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wa901nd-v2="-uboot-envtools"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr3500-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr3500-v1=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr3600-v1=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr3600-v1=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr4300-v1=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr4300-v1=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr4310-v1=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr4310-v1=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v1=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v1=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v2=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v2=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v3=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v3=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v4=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v4=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043n-v5=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043n-v5=""
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr740n-v4=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr740n-v4="-uboot-envtools"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr741nd-v2=y
@@ -78,8 +52,6 @@  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-nano-m=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-nano-m="-rssileds"
 CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y
 CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi=""
-CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y
-CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=""
 CONFIG_BUSYBOX_CUSTOM=y
 CONFIG_TARGET_PER_DEVICE_ROOTFS=y
 # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
diff --git a/bsp/ath79/.config b/bsp/ath79/.config
new file mode 100644
index 00000000..70383d85
--- /dev/null
+++ b/bsp/ath79/.config
@@ -0,0 +1,57 @@ 
+# Generated using "./buildscript config openwrt".
+# Do no edit manually
+#
+CONFIG_TARGET_ath79=y
+CONFIG_TARGET_ath79_generic=y
+CONFIG_TARGET_MULTI_PROFILE=y
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_glinet_gl-ar150=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_glinet_gl-ar150=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c25-v1=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c25-v1=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c7-v2=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c7-v2=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c7-v5=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c7-v5=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_cpe210-v2=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_cpe210-v2="-rssileds"
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_cpe210-v3=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_cpe210-v3="-rssileds"
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wdr3600-v1=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wdr3600-v1=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wdr4300-v1=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wdr4300-v1=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v1=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v1=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v2=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v2=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v3=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v3=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v4=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v4=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043n-v5=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043n-v5=""
+CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_ubnt_unifiac-mesh=y
+CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_ubnt_unifiac-mesh=""
+CONFIG_BUSYBOX_CUSTOM=y
+CONFIG_TARGET_PER_DEVICE_ROOTFS=y
+# CONFIG_BUSYBOX_CONFIG_BRCTL is not set
+# CONFIG_BUSYBOX_CONFIG_CROND is not set
+# CONFIG_BUSYBOX_CONFIG_CRONTAB is not set
+# CONFIG_BUSYBOX_CONFIG_FEATURE_FAST_TOP is not set
+# CONFIG_BUSYBOX_CONFIG_FEATURE_NTPD_SERVER is not set
+CONFIG_CLEAN_IPKG=y
+# CONFIG_DROPBEAR_CURVE25519 is not set
+# CONFIG_FASTD_ENABLE_CIPHER_SALSA2012 is not set
+# CONFIG_FASTD_ENABLE_MAC_GHASH is not set
+# CONFIG_FASTD_ENABLE_MAC_UHASH is not set
+# CONFIG_FASTD_ENABLE_METHOD_COMPOSED_GMAC is not set
+# CONFIG_FASTD_ENABLE_METHOD_COMPOSED_UMAC is not set
+# CONFIG_FASTD_ENABLE_METHOD_GENERIC_GMAC is not set
+# CONFIG_FASTD_ENABLE_METHOD_GENERIC_UMAC is not set
+# CONFIG_PACKAGE_ALFRED_VIS is not set
+CONFIG_PACKAGE_hostapd-mini=y
+CONFIG_PACKAGE_iwinfo=m
+CONFIG_PACKAGE_libiwinfo=m
+CONFIG_PACKAGE_opkg=m
+CONFIG_PACKAGE_wpad-mini=m
+CONFIG_STRIP_KERNEL_EXPORTS=y
diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
index 46c5df2f..5049d631 100644
--- a/bsp/board_ar71xx.bsp
+++ b/bsp/board_ar71xx.bsp
@@ -1,29 +1,16 @@ 
 machine=ar71xx
 chipset=ar71xx
 subtarget=tiny
-images=("openwrt-${chipset}-${subtarget}-archer-c25-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-archer-c60-v1-squashfs-sysupgrade.bin"
+images=("openwrt-${chipset}-${subtarget}-archer-c60-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-archer-c60-v2-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-archer-c7-v2-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-archer-c7-v5-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-cpe210-220-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-cpe210-v2-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-cpe210-v3-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-cpe510-520-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-gl-ar150-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-mr3020-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wa850re-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wa860re-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wa901nd-v2-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wdr3500-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wdr3600-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wdr4300-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wdr4310-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v1-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v2-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v3-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v4-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-tl-wr1043n-v5-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wr740n-v4-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wr741nd-v2-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-tl-wr741nd-v4-squashfs-sysupgrade.bin"
@@ -38,5 +25,4 @@  images=("openwrt-${chipset}-${subtarget}-archer-c25-v1-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-ubnt-loco-m-xw-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-ubnt-nano-m-squashfs-sysupgrade.bin"
         "openwrt-${chipset}-${subtarget}-ubnt-unifi-squashfs-sysupgrade.bin"
-        "openwrt-${chipset}-${subtarget}-ubnt-unifiac-lite-squashfs-sysupgrade.bin"
         )
diff --git a/bsp/board_ath79.bsp b/bsp/board_ath79.bsp
new file mode 100644
index 00000000..bea7d2b9
--- /dev/null
+++ b/bsp/board_ath79.bsp
@@ -0,0 +1,18 @@ 
+machine=ath79
+chipset=ath79
+subtarget=generic
+images=("openwrt-${chipset}-${subtarget}-glinet_gl-ar150-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_archer-c25-v1-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_archer-c7-v2-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_archer-c7-v5-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_cpe210-v2-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_cpe210-v3-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wdr3600-v1-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wdr4300-v1-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v1-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v2-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v3-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v4-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043n-v5-squashfs-sysupgrade.bin"
+        "openwrt-${chipset}-${subtarget}-ubnt_unifiac-mesh-squashfs-sysupgrade.bin"
+        )
diff --git a/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel b/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
index c238cc16..44e263b2 100644
--- a/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
+++ b/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
@@ -2,7 +2,7 @@ 
 . /lib/functions/fff/babel
 
 #load board specific properties
-BOARD="$(uci get board.model.name)"
+BOARD="$(uci get board.model.name | sed 's/,/_/')"
 . /etc/network.$BOARD
 
 configure() {
diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
index ee9c3d39..db9efa3f 100644
--- a/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
+++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
@@ -3,12 +3,6 @@ 
 BOARD=$(cat /var/sysinfo/board_name)
 
 case "$BOARD" in
-    tl-wr1043nd)
-        BOARD=tl-wr1043nd-v1
-        ;;
-    tl-wr1043nd-v2)
-        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
-        ;;
     tl-wr741nd)
         grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
         ;;
@@ -44,9 +38,6 @@  case "$BOARD" in
         BOARD=ubnt-loco-m-xw
         grep -i "Power" /var/sysinfo/model && BOARD=ubnt-power-m-xw
         ;;
-    unifiac-lite)
-        BOARD=ubnt-unifiac-lite
-        ;;
     tl-wa850re)
         BOARD=tl-wa850re-v1
         ;;
@@ -57,19 +48,11 @@  case "$BOARD" in
         BOARD=tl-wdr3500-v1
         ;;
     tl-wdr4300)
-        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
-        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
         grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
         ;;
-    tplink,tl-wdr4900-v1)
-        BOARD=tl-wdr4900-v1
-        ;;
     tl-mr3020)
         BOARD=tl-mr3020-v1
         ;;
-    archer-c7)
-        BOARD=archer-c7-v2
-        ;;
 esac
 
 uci set board.model.name=$BOARD
diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan b/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
index cfc8e69a..2cb8c4dc 100644
--- a/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
+++ b/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
@@ -2,7 +2,7 @@ 
 . /lib/functions.sh
 
 # load board specific properties
-BOARD="$(uci get board.model.name)"
+BOARD="$(uci get board.model.name | sed 's/,/_/')"
 . /etc/network.$BOARD
 . /lib/functions/fff/cpuport
 
diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client b/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
index 473d288d..57bd4601 100644
--- a/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
+++ b/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
@@ -1,5 +1,5 @@ 
 # load board specific properties
-BOARD="$(uci get board.model.name)"
+BOARD="$(uci get board.model.name | sed 's/,/_/')"
 . /etc/network.$BOARD
 
 
diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1 b/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
deleted file mode 100644
index b88b96b2..00000000
--- a/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
+++ /dev/null
@@ -1,10 +0,0 @@ 
-PORTORDER="4 3 2 1"
-
-WANDEV=eth0
-SWITCHDEV=eth1
-CLIENT_PORTS="1 2 0t"
-WAN_PORTS=""
-BATMAN_PORTS="3 4 0t"
-
-ETHMESHMAC=$(cat /sys/class/net/eth1/address)
-ROUTERMAC=$(cat /sys/class/net/eth0/address)
diff --git a/src/packages/fff/fff-network/ar71xx/network.gl-ar150 b/src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
similarity index 88%
rename from src/packages/fff/fff-network/ar71xx/network.gl-ar150
rename to src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
index 64049dd2..49bffebe 100644
--- a/src/packages/fff/fff-network/ar71xx/network.gl-ar150
+++ b/src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
@@ -2,8 +2,8 @@ 
 
 PORTORDER="1"
 
-WANDEV=eth0
-SWITCHDEV=eth1
+WANDEV=eth1
+SWITCHDEV=eth0
 WAN_PORTS=
 BATMAN_PORTS="0t"
 CLIENT_PORTS="0t"
diff --git a/src/packages/fff/fff-network/ath79/network.mode b/src/packages/fff/fff-network/ath79/network.mode
new file mode 100644
index 00000000..f3a27939
--- /dev/null
+++ b/src/packages/fff/fff-network/ath79/network.mode
@@ -0,0 +1,30 @@ 
+################
+## This file is used to configure the behavior of network interfaces
+## if the routers interfaces differ from the standard WAN+4LAN-Ports
+## +2Wireless APs.
+## If you want to change their behavior, you should edit the file
+## /etc/network.config
+## After that you have to reboot the router with following command.
+#reboot
+#
+### The canonical syntax of this file is:
+#SPECIFIER="MODE"
+### MODES
+## Generally there are 3 operating modes for network interfaces in fff.
+#BATMAN: The interface is used to mesh with other fff-nodes
+#WAN:    The interface is used to connect to supernodes via vpn and
+#         ordinary internet.
+#CLIENT: The interface is used to connect clients to the fff-net
+##
+### SPECIFIER
+## For devices only including one ethernet port the specifier is called
+## ETHMODE. The default mode for these devices is "BATMAN".
+## For example this is the case for: gl-ar150, tl-mr3020-v1, tl-wa850re-v1,
+## tl-wa860re-v1, tl-wa901nd-v2, ubnt-bullet-m, ubnt-loco-m-xw, ubnt-nano-m,
+## ubnt-unifi
+ETHMODE="CLIENT"
+## Devices featuring 2 ethernet ports are configured by SPECIFIERs ressembling
+## the labels on the PORT itself. For the cpe210 these are called LAN0 and LAN1.
+## Therefore they are configured as follows:
+LAN0MODE="WAN"
+LAN1MODE="CLIENT"
diff --git a/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
new file mode 100644
index 00000000..59149cf7
--- /dev/null
+++ b/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
@@ -0,0 +1,10 @@ 
+PORTORDER="4 3 2 1"
+
+WANDEV=eth1
+SWITCHDEV=eth0
+CLIENT_PORTS="1 2 0t"
+WAN_PORTS=""
+BATMAN_PORTS="3 4 0t"
+
+ETHMESHMAC=$(cat /sys/class/net/eth0/address)
+ROUTERMAC=$(cat /sys/class/net/eth1/address)
diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c7-v2 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v2
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.archer-c7-v2
rename to src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v2
diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c7-v5 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v5
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.archer-c7-v5
rename to src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v5
diff --git a/src/packages/fff/fff-network/ar71xx/network.cpe210-v2 b/src/packages/fff/fff-network/ath79/network.tplink_cpe210-v2
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.cpe210-v2
rename to src/packages/fff/fff-network/ath79/network.tplink_cpe210-v2
diff --git a/src/packages/fff/fff-network/ar71xx/network.cpe210-v3 b/src/packages/fff/fff-network/ath79/network.tplink_cpe210-v3
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.cpe210-v3
rename to src/packages/fff/fff-network/ath79/network.tplink_cpe210-v3
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wdr3600-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wdr3600-v1
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wdr3600-v1
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wdr3600-v1
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wdr4300-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wdr4300-v1
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wdr4300-v1
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wdr4300-v1
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
similarity index 83%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
index ec6d6717..c52e74e6 100644
--- a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5
+++ b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
@@ -12,5 +12,5 @@  BATMAN_PORTS="3 4 0t"
 # Load second MAC address from flash because we haven't any interface with this
 # address where we can copy it from
 
-ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary product-info 8) 1)
+ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary info 8) 1)
 ROUTERMAC=$(cat /sys/class/net/eth0/address)
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v1
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v1
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v1
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v2 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v2
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v2
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v2
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v3 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v3
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v3
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v3
diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
similarity index 83%
rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4
rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
index ec6d6717..c52e74e6 100644
--- a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4
+++ b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
@@ -12,5 +12,5 @@  BATMAN_PORTS="3 4 0t"
 # Load second MAC address from flash because we haven't any interface with this
 # address where we can copy it from
 
-ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary product-info 8) 1)
+ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary info 8) 1)
 ROUTERMAC=$(cat /sys/class/net/eth0/address)
diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite b/src/packages/fff/fff-network/ath79/network.ubnt_unifiac-mesh
similarity index 100%
rename from src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
rename to src/packages/fff/fff-network/ath79/network.ubnt_unifiac-mesh
diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
index 0ae7ba8a..d24ee0a2 100755
--- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
+++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
@@ -62,7 +62,7 @@  disableAutoConf() {
     setAutoConf "$iface" "0"
 }
 
-BOARD="$(uci get board.model.name)"
+BOARD="$(uci get board.model.name | sed 's/,/_/')"
 . /etc/network.$BOARD
 
 if [ -s /etc/network.config ] ; then
diff --git a/src/packages/fff/fff-network/mpc85xx/network.tl-wdr4900-v1 b/src/packages/fff/fff-network/mpc85xx/network.tplink_tl-wdr4900-v1
similarity index 100%
rename from src/packages/fff/fff-network/mpc85xx/network.tl-wdr4900-v1
rename to src/packages/fff/fff-network/mpc85xx/network.tplink_tl-wdr4900-v1
diff --git a/src/packages/fff/fff-support/files/usr/sbin/show_info b/src/packages/fff/fff-support/files/usr/sbin/show_info
index d3367aec..835cafad 100755
--- a/src/packages/fff/fff-support/files/usr/sbin/show_info
+++ b/src/packages/fff/fff-support/files/usr/sbin/show_info
@@ -5,7 +5,7 @@ 
 . /lib/functions/fff/evalbytes
 . /lib/functions.sh # required for config_load and config_foreach
 
-board_name=$(uci -q get board.model.name)
+board_name=$(uci -q get board.model.name | sed 's/,/_/')
 
 HOSTNAME=$(uci -q get 'fff.system.hostname')
 hood="$(uci -q get "system.@system[0].hood")"
diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
index 01506fce..b0db89c9 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
@@ -1,7 +1,7 @@ 
 #!/usr/bin/haserl
 
 <%
-board_name=$(uci -q get board.model.name)
+board_name=$(uci -q get board.model.name | sed 's/,/_/')
 # write
 if [ "$REQUEST_METHOD" = "POST" ] ; then
 	if [ "$POST_change_mode" != "" ] ; then
diff --git a/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard b/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
index 69a3d74d..6a37c8fe 100644
--- a/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
+++ b/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
@@ -3,7 +3,7 @@ 
 . /lib/functions/fff/babel
 
 #load board specific properties
-BOARD="$(uci get board.model.name)"
+BOARD="$(uci get board.model.name | sed 's/,/_/')"
 . /etc/network.$BOARD
 
 configure() {
diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless b/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
index d4f2267e..c09d451b 100644
--- a/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
+++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
@@ -6,7 +6,7 @@  BOARD="$(uci get board.model.name)"
 
 # antenna gain
 case "$BOARD" in
-	tl-wr1043nd-v1)
+	tplink,tl-wr1043nd-v1)
 		uci set wireless.radio0.antenna_gain=3
 		uci commit wireless
 		;;
@@ -32,9 +32,7 @@  case "$BOARD" in
 		uci set wireless.radio0.antenna_gain=3
 		uci commit wireless
 		;;
-	ubnt-unifiac-lite)
-		# These are the values for the AC MESH.
-		# The actual AC Lite has different values
+	ubnt,unifiac-mesh)
 		uci set wireless.radio0.antenna_gain=4
 		uci set wireless.radio1.antenna_gain=3
 		uci commit wireless

Comments

Fabian Blaese March 16, 2020, 3:02 p.m.
Bin ich sehr dafür. Wollen wir vorher nochmal ein 19.07 Release machen?
Wir hatten uns ja vorgenommen, Änderungen häufiger zu veröffentlichen.

On 16.03.20 00:42, Adrian Schmutzler wrote:
> This migrates an arbitrarily chosen subset of devices from generic
> subtarget to ath79.
> 
> This requires some adjustments on the way:
> - The board names and image names on ath79 contain the vendor name,
>   where the former have it separated by a comma (tplink,cpe210-v2)
>   and the latter use an underscore (tplink_cpe210-v2). It is
>   guaranteed that this is the only difference between board and
>   image names.
>   Consequently, the ath79 devices will use their full board also
>   in our firmware. For file names (the network.*), the pattern with
>   underscore is used instead and thus some sed commands have been
>   introduced.
>   While at it, fix that for the WDR4900 v1 as well.
> - Due to a different switch driver, the startup of ethernet devices
>   is altered, which leads to eth0 and eth1 being swapped for some ath79
>   devices compared to ar71xx. This has been adjusted for SWITCHDEV/WANDEV
>   and MAC address setup.
> - Since we have direct support for the AC Mesh now, use the proper
>   name instead of the AC Lite image.
> 
> This patch is intended for testing/commenting only. There are further
> devices that can be migrated and were just not chosen here.
> 
> Note that this has just been written in code and not even build-tested.
> 
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> ---
>  bsp/ar71xx/.config                            | 28 ---------
>  bsp/ath79/.config                             | 57 +++++++++++++++++++
>  bsp/board_ar71xx.bsp                          | 16 +-----
>  bsp/board_ath79.bsp                           | 18 ++++++
>  .../fff-babeld/files/etc/gateway.d/40-babel   |  2 +-
>  .../files/etc/uci-defaults/15-fff-boardname   | 17 ------
>  .../fff-gateway/files/etc/gateway.d/20-vlan   |  2 +-
>  .../files/etc/gateway.d/30-network-client     |  2 +-
>  .../fff-network/ar71xx/network.archer-c25-v1  | 10 ----
>  .../network.glinet_gl-ar150}                  |  4 +-
>  .../fff/fff-network/ath79/network.mode        | 30 ++++++++++
>  .../ath79/network.tplink_archer-c25-v1        | 10 ++++
>  .../network.tplink_archer-c7-v2}              |  0
>  .../network.tplink_archer-c7-v5}              |  0
>  .../network.tplink_cpe210-v2}                 |  0
>  .../network.tplink_cpe210-v3}                 |  0
>  .../network.tplink_tl-wdr3600-v1}             |  0
>  .../network.tplink_tl-wdr4300-v1}             |  0
>  .../network.tplink_tl-wr1043n-v5}             |  2 +-
>  .../network.tplink_tl-wr1043nd-v1}            |  0
>  .../network.tplink_tl-wr1043nd-v2}            |  0
>  .../network.tplink_tl-wr1043nd-v3}            |  0
>  .../network.tplink_tl-wr1043nd-v4}            |  2 +-
>  .../network.ubnt_unifiac-mesh}                |  0
>  .../files/usr/sbin/configurenetwork           |  2 +-
>  ...dr4900-v1 => network.tplink_tl-wdr4900-v1} |  0
>  .../fff/fff-support/files/usr/sbin/show_info  |  2 +-
>  .../fff-web/files/www/ssl/cgi-bin/ports.html  |  2 +-
>  .../files/etc/gateway.d/50-wireguard          |  2 +-
>  .../etc/uci-defaults/24b-config-wireless      |  6 +-
>  30 files changed, 129 insertions(+), 85 deletions(-)
>  create mode 100644 bsp/ath79/.config
>  create mode 100644 bsp/board_ath79.bsp
>  delete mode 100644 src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
>  rename src/packages/fff/fff-network/{ar71xx/network.gl-ar150 => ath79/network.glinet_gl-ar150} (88%)
>  create mode 100644 src/packages/fff/fff-network/ath79/network.mode
>  create mode 100644 src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
>  rename src/packages/fff/fff-network/{ar71xx/network.archer-c7-v2 => ath79/network.tplink_archer-c7-v2} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.archer-c7-v5 => ath79/network.tplink_archer-c7-v5} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.cpe210-v2 => ath79/network.tplink_cpe210-v2} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.cpe210-v3 => ath79/network.tplink_cpe210-v3} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wdr3600-v1 => ath79/network.tplink_tl-wdr3600-v1} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wdr4300-v1 => ath79/network.tplink_tl-wdr4300-v1} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043n-v5 => ath79/network.tplink_tl-wr1043n-v5} (83%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v1 => ath79/network.tplink_tl-wr1043nd-v1} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v2 => ath79/network.tplink_tl-wr1043nd-v2} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v3 => ath79/network.tplink_tl-wr1043nd-v3} (100%)
>  rename src/packages/fff/fff-network/{ar71xx/network.tl-wr1043nd-v4 => ath79/network.tplink_tl-wr1043nd-v4} (83%)
>  rename src/packages/fff/fff-network/{ar71xx/network.ubnt-unifiac-lite => ath79/network.ubnt_unifiac-mesh} (100%)
>  rename src/packages/fff/fff-network/mpc85xx/{network.tl-wdr4900-v1 => network.tplink_tl-wdr4900-v1} (100%)
> 
> diff --git a/bsp/ar71xx/.config b/bsp/ar71xx/.config
> index 6c2c730d..7d11b318 100644
> --- a/bsp/ar71xx/.config
> +++ b/bsp/ar71xx/.config
> @@ -4,26 +4,14 @@
>  CONFIG_TARGET_ar71xx=y
>  CONFIG_TARGET_ar71xx_tiny=y
>  CONFIG_TARGET_MULTI_PROFILE=y
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c25-v1=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c25-v1=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v1=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c60-v2=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c60-v2=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v2=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v2=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_archer-c7-v5=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_archer-c7-v5=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-220-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-220-v1="-rssileds"
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v2=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-v2="-rssileds"
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe210-v3=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe210-v3="-rssileds"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_cpe510-520-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_cpe510-520-v1="-rssileds"
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_gl-ar150=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_gl-ar150=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-mr3020-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-mr3020-v1="-uboot-envtools -kmod-usb-core -kmod-usb2 -kmod-usb-ledtrig-usbport"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wa850re-v1=y
> @@ -34,22 +22,8 @@ CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wa901nd-v2=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wa901nd-v2="-uboot-envtools"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr3500-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr3500-v1=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr3600-v1=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr3600-v1=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr4300-v1=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr4300-v1=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wdr4310-v1=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wdr4310-v1=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v1=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v1=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v2=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v2=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v3=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v3=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043nd-v4=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043nd-v4=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr1043n-v5=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr1043n-v5=""
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr740n-v4=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_tl-wr740n-v4="-uboot-envtools"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_tl-wr741nd-v2=y
> @@ -78,8 +52,6 @@ CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-nano-m=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-nano-m="-rssileds"
>  CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifi=y
>  CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifi=""
> -CONFIG_TARGET_DEVICE_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=y
> -CONFIG_TARGET_DEVICE_PACKAGES_ar71xx_tiny_DEVICE_ubnt-unifiac-lite=""
>  CONFIG_BUSYBOX_CUSTOM=y
>  CONFIG_TARGET_PER_DEVICE_ROOTFS=y
>  # CONFIG_BUSYBOX_CONFIG_BRCTL is not set
> diff --git a/bsp/ath79/.config b/bsp/ath79/.config
> new file mode 100644
> index 00000000..70383d85
> --- /dev/null
> +++ b/bsp/ath79/.config
> @@ -0,0 +1,57 @@
> +# Generated using "./buildscript config openwrt".
> +# Do no edit manually
> +#
> +CONFIG_TARGET_ath79=y
> +CONFIG_TARGET_ath79_generic=y
> +CONFIG_TARGET_MULTI_PROFILE=y
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_glinet_gl-ar150=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_glinet_gl-ar150=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c25-v1=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c25-v1=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c7-v2=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c7-v2=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_archer-c7-v5=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_archer-c7-v5=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_cpe210-v2=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_cpe210-v2="-rssileds"
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_cpe210-v3=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_cpe210-v3="-rssileds"
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wdr3600-v1=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wdr3600-v1=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wdr4300-v1=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wdr4300-v1=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v1=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v1=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v2=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v2=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v3=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v3=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043nd-v4=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043nd-v4=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_tplink_tl-wr1043n-v5=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_tplink_tl-wr1043n-v5=""
> +CONFIG_TARGET_DEVICE_ath79_generic_DEVICE_ubnt_unifiac-mesh=y
> +CONFIG_TARGET_DEVICE_PACKAGES_ath79_generic_DEVICE_ubnt_unifiac-mesh=""
> +CONFIG_BUSYBOX_CUSTOM=y
> +CONFIG_TARGET_PER_DEVICE_ROOTFS=y
> +# CONFIG_BUSYBOX_CONFIG_BRCTL is not set
> +# CONFIG_BUSYBOX_CONFIG_CROND is not set
> +# CONFIG_BUSYBOX_CONFIG_CRONTAB is not set
> +# CONFIG_BUSYBOX_CONFIG_FEATURE_FAST_TOP is not set
> +# CONFIG_BUSYBOX_CONFIG_FEATURE_NTPD_SERVER is not set
> +CONFIG_CLEAN_IPKG=y
> +# CONFIG_DROPBEAR_CURVE25519 is not set
> +# CONFIG_FASTD_ENABLE_CIPHER_SALSA2012 is not set
> +# CONFIG_FASTD_ENABLE_MAC_GHASH is not set
> +# CONFIG_FASTD_ENABLE_MAC_UHASH is not set
> +# CONFIG_FASTD_ENABLE_METHOD_COMPOSED_GMAC is not set
> +# CONFIG_FASTD_ENABLE_METHOD_COMPOSED_UMAC is not set
> +# CONFIG_FASTD_ENABLE_METHOD_GENERIC_GMAC is not set
> +# CONFIG_FASTD_ENABLE_METHOD_GENERIC_UMAC is not set
> +# CONFIG_PACKAGE_ALFRED_VIS is not set
> +CONFIG_PACKAGE_hostapd-mini=y
> +CONFIG_PACKAGE_iwinfo=m
> +CONFIG_PACKAGE_libiwinfo=m
> +CONFIG_PACKAGE_opkg=m
> +CONFIG_PACKAGE_wpad-mini=m
> +CONFIG_STRIP_KERNEL_EXPORTS=y
> diff --git a/bsp/board_ar71xx.bsp b/bsp/board_ar71xx.bsp
> index 46c5df2f..5049d631 100644
> --- a/bsp/board_ar71xx.bsp
> +++ b/bsp/board_ar71xx.bsp
> @@ -1,29 +1,16 @@
>  machine=ar71xx
>  chipset=ar71xx
>  subtarget=tiny
> -images=("openwrt-${chipset}-${subtarget}-archer-c25-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-archer-c60-v1-squashfs-sysupgrade.bin"
> +images=("openwrt-${chipset}-${subtarget}-archer-c60-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-archer-c60-v2-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-archer-c7-v2-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-archer-c7-v5-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-cpe210-220-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-cpe210-v2-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-cpe210-v3-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-cpe510-520-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-gl-ar150-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-mr3020-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wa850re-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wa860re-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wa901nd-v2-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wdr3500-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wdr3600-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wdr4300-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wdr4310-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v1-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v2-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v3-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wr1043nd-v4-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-tl-wr1043n-v5-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wr740n-v4-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wr741nd-v2-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-tl-wr741nd-v4-squashfs-sysupgrade.bin"
> @@ -38,5 +25,4 @@ images=("openwrt-${chipset}-${subtarget}-archer-c25-v1-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-ubnt-loco-m-xw-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-ubnt-nano-m-squashfs-sysupgrade.bin"
>          "openwrt-${chipset}-${subtarget}-ubnt-unifi-squashfs-sysupgrade.bin"
> -        "openwrt-${chipset}-${subtarget}-ubnt-unifiac-lite-squashfs-sysupgrade.bin"
>          )
> diff --git a/bsp/board_ath79.bsp b/bsp/board_ath79.bsp
> new file mode 100644
> index 00000000..bea7d2b9
> --- /dev/null
> +++ b/bsp/board_ath79.bsp
> @@ -0,0 +1,18 @@
> +machine=ath79
> +chipset=ath79
> +subtarget=generic
> +images=("openwrt-${chipset}-${subtarget}-glinet_gl-ar150-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_archer-c25-v1-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_archer-c7-v2-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_archer-c7-v5-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_cpe210-v2-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_cpe210-v3-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wdr3600-v1-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wdr4300-v1-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v1-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v2-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v3-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043nd-v4-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-tplink_tl-wr1043n-v5-squashfs-sysupgrade.bin"
> +        "openwrt-${chipset}-${subtarget}-ubnt_unifiac-mesh-squashfs-sysupgrade.bin"
> +        )
> diff --git a/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel b/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
> index c238cc16..44e263b2 100644
> --- a/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
> +++ b/src/packages/fff/fff-babeld/files/etc/gateway.d/40-babel
> @@ -2,7 +2,7 @@
>  . /lib/functions/fff/babel
>  
>  #load board specific properties
> -BOARD="$(uci get board.model.name)"
> +BOARD="$(uci get board.model.name | sed 's/,/_/')"
>  . /etc/network.$BOARD
>  
>  configure() {
> diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
> index ee9c3d39..db9efa3f 100644
> --- a/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
> +++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/15-fff-boardname
> @@ -3,12 +3,6 @@
>  BOARD=$(cat /var/sysinfo/board_name)
>  
>  case "$BOARD" in
> -    tl-wr1043nd)
> -        BOARD=tl-wr1043nd-v1
> -        ;;
> -    tl-wr1043nd-v2)
> -        grep "v3" /var/sysinfo/model && BOARD=tl-wr1043nd-v3
> -        ;;
>      tl-wr741nd)
>          grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
>          ;;
> @@ -44,9 +38,6 @@ case "$BOARD" in
>          BOARD=ubnt-loco-m-xw
>          grep -i "Power" /var/sysinfo/model && BOARD=ubnt-power-m-xw
>          ;;
> -    unifiac-lite)
> -        BOARD=ubnt-unifiac-lite
> -        ;;
>      tl-wa850re)
>          BOARD=tl-wa850re-v1
>          ;;
> @@ -57,19 +48,11 @@ case "$BOARD" in
>          BOARD=tl-wdr3500-v1
>          ;;
>      tl-wdr4300)
> -        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
> -        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
>          grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
>          ;;
> -    tplink,tl-wdr4900-v1)
> -        BOARD=tl-wdr4900-v1
> -        ;;
>      tl-mr3020)
>          BOARD=tl-mr3020-v1
>          ;;
> -    archer-c7)
> -        BOARD=archer-c7-v2
> -        ;;
>  esac
>  
>  uci set board.model.name=$BOARD
> diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan b/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
> index cfc8e69a..2cb8c4dc 100644
> --- a/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
> +++ b/src/packages/fff/fff-gateway/files/etc/gateway.d/20-vlan
> @@ -2,7 +2,7 @@
>  . /lib/functions.sh
>  
>  # load board specific properties
> -BOARD="$(uci get board.model.name)"
> +BOARD="$(uci get board.model.name | sed 's/,/_/')"
>  . /etc/network.$BOARD
>  . /lib/functions/fff/cpuport
>  
> diff --git a/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client b/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
> index 473d288d..57bd4601 100644
> --- a/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
> +++ b/src/packages/fff/fff-gateway/files/etc/gateway.d/30-network-client
> @@ -1,5 +1,5 @@
>  # load board specific properties
> -BOARD="$(uci get board.model.name)"
> +BOARD="$(uci get board.model.name | sed 's/,/_/')"
>  . /etc/network.$BOARD
>  
>  
> diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1 b/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
> deleted file mode 100644
> index b88b96b2..00000000
> --- a/src/packages/fff/fff-network/ar71xx/network.archer-c25-v1
> +++ /dev/null
> @@ -1,10 +0,0 @@
> -PORTORDER="4 3 2 1"
> -
> -WANDEV=eth0
> -SWITCHDEV=eth1
> -CLIENT_PORTS="1 2 0t"
> -WAN_PORTS=""
> -BATMAN_PORTS="3 4 0t"
> -
> -ETHMESHMAC=$(cat /sys/class/net/eth1/address)
> -ROUTERMAC=$(cat /sys/class/net/eth0/address)
> diff --git a/src/packages/fff/fff-network/ar71xx/network.gl-ar150 b/src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
> similarity index 88%
> rename from src/packages/fff/fff-network/ar71xx/network.gl-ar150
> rename to src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
> index 64049dd2..49bffebe 100644
> --- a/src/packages/fff/fff-network/ar71xx/network.gl-ar150
> +++ b/src/packages/fff/fff-network/ath79/network.glinet_gl-ar150
> @@ -2,8 +2,8 @@
>  
>  PORTORDER="1"
>  
> -WANDEV=eth0
> -SWITCHDEV=eth1
> +WANDEV=eth1
> +SWITCHDEV=eth0
>  WAN_PORTS=
>  BATMAN_PORTS="0t"
>  CLIENT_PORTS="0t"
> diff --git a/src/packages/fff/fff-network/ath79/network.mode b/src/packages/fff/fff-network/ath79/network.mode
> new file mode 100644
> index 00000000..f3a27939
> --- /dev/null
> +++ b/src/packages/fff/fff-network/ath79/network.mode
> @@ -0,0 +1,30 @@
> +################
> +## This file is used to configure the behavior of network interfaces
> +## if the routers interfaces differ from the standard WAN+4LAN-Ports
> +## +2Wireless APs.
> +## If you want to change their behavior, you should edit the file
> +## /etc/network.config
> +## After that you have to reboot the router with following command.
> +#reboot
> +#
> +### The canonical syntax of this file is:
> +#SPECIFIER="MODE"
> +### MODES
> +## Generally there are 3 operating modes for network interfaces in fff.
> +#BATMAN: The interface is used to mesh with other fff-nodes
> +#WAN:    The interface is used to connect to supernodes via vpn and
> +#         ordinary internet.
> +#CLIENT: The interface is used to connect clients to the fff-net
> +##
> +### SPECIFIER
> +## For devices only including one ethernet port the specifier is called
> +## ETHMODE. The default mode for these devices is "BATMAN".
> +## For example this is the case for: gl-ar150, tl-mr3020-v1, tl-wa850re-v1,
> +## tl-wa860re-v1, tl-wa901nd-v2, ubnt-bullet-m, ubnt-loco-m-xw, ubnt-nano-m,
> +## ubnt-unifi
> +ETHMODE="CLIENT"
> +## Devices featuring 2 ethernet ports are configured by SPECIFIERs ressembling
> +## the labels on the PORT itself. For the cpe210 these are called LAN0 and LAN1.
> +## Therefore they are configured as follows:
> +LAN0MODE="WAN"
> +LAN1MODE="CLIENT"
> diff --git a/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
> new file mode 100644
> index 00000000..59149cf7
> --- /dev/null
> +++ b/src/packages/fff/fff-network/ath79/network.tplink_archer-c25-v1
> @@ -0,0 +1,10 @@
> +PORTORDER="4 3 2 1"
> +
> +WANDEV=eth1
> +SWITCHDEV=eth0
> +CLIENT_PORTS="1 2 0t"
> +WAN_PORTS=""
> +BATMAN_PORTS="3 4 0t"
> +
> +ETHMESHMAC=$(cat /sys/class/net/eth0/address)
> +ROUTERMAC=$(cat /sys/class/net/eth1/address)
> diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c7-v2 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v2
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.archer-c7-v2
> rename to src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v2
> diff --git a/src/packages/fff/fff-network/ar71xx/network.archer-c7-v5 b/src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v5
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.archer-c7-v5
> rename to src/packages/fff/fff-network/ath79/network.tplink_archer-c7-v5
> diff --git a/src/packages/fff/fff-network/ar71xx/network.cpe210-v2 b/src/packages/fff/fff-network/ath79/network.tplink_cpe210-v2
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.cpe210-v2
> rename to src/packages/fff/fff-network/ath79/network.tplink_cpe210-v2
> diff --git a/src/packages/fff/fff-network/ar71xx/network.cpe210-v3 b/src/packages/fff/fff-network/ath79/network.tplink_cpe210-v3
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.cpe210-v3
> rename to src/packages/fff/fff-network/ath79/network.tplink_cpe210-v3
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wdr3600-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wdr3600-v1
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wdr3600-v1
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wdr3600-v1
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wdr4300-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wdr4300-v1
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wdr4300-v1
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wdr4300-v1
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
> similarity index 83%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
> index ec6d6717..c52e74e6 100644
> --- a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043n-v5
> +++ b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043n-v5
> @@ -12,5 +12,5 @@ BATMAN_PORTS="3 4 0t"
>  # Load second MAC address from flash because we haven't any interface with this
>  # address where we can copy it from
>  
> -ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary product-info 8) 1)
> +ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary info 8) 1)
>  ROUTERMAC=$(cat /sys/class/net/eth0/address)
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v1 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v1
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v1
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v1
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v2 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v2
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v2
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v2
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v3 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v3
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v3
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v3
> diff --git a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4 b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
> similarity index 83%
> rename from src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4
> rename to src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
> index ec6d6717..c52e74e6 100644
> --- a/src/packages/fff/fff-network/ar71xx/network.tl-wr1043nd-v4
> +++ b/src/packages/fff/fff-network/ath79/network.tplink_tl-wr1043nd-v4
> @@ -12,5 +12,5 @@ BATMAN_PORTS="3 4 0t"
>  # Load second MAC address from flash because we haven't any interface with this
>  # address where we can copy it from
>  
> -ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary product-info 8) 1)
> +ETHMESHMAC=$(macaddr_add $(mtd_get_mac_binary info 8) 1)
>  ROUTERMAC=$(cat /sys/class/net/eth0/address)
> diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite b/src/packages/fff/fff-network/ath79/network.ubnt_unifiac-mesh
> similarity index 100%
> rename from src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-lite
> rename to src/packages/fff/fff-network/ath79/network.ubnt_unifiac-mesh
> diff --git a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> index 0ae7ba8a..d24ee0a2 100755
> --- a/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> +++ b/src/packages/fff/fff-network/files/usr/sbin/configurenetwork
> @@ -62,7 +62,7 @@ disableAutoConf() {
>      setAutoConf "$iface" "0"
>  }
>  
> -BOARD="$(uci get board.model.name)"
> +BOARD="$(uci get board.model.name | sed 's/,/_/')"
>  . /etc/network.$BOARD
>  
>  if [ -s /etc/network.config ] ; then
> diff --git a/src/packages/fff/fff-network/mpc85xx/network.tl-wdr4900-v1 b/src/packages/fff/fff-network/mpc85xx/network.tplink_tl-wdr4900-v1
> similarity index 100%
> rename from src/packages/fff/fff-network/mpc85xx/network.tl-wdr4900-v1
> rename to src/packages/fff/fff-network/mpc85xx/network.tplink_tl-wdr4900-v1
> diff --git a/src/packages/fff/fff-support/files/usr/sbin/show_info b/src/packages/fff/fff-support/files/usr/sbin/show_info
> index d3367aec..835cafad 100755
> --- a/src/packages/fff/fff-support/files/usr/sbin/show_info
> +++ b/src/packages/fff/fff-support/files/usr/sbin/show_info
> @@ -5,7 +5,7 @@
>  . /lib/functions/fff/evalbytes
>  . /lib/functions.sh # required for config_load and config_foreach
>  
> -board_name=$(uci -q get board.model.name)
> +board_name=$(uci -q get board.model.name | sed 's/,/_/')
>  
>  HOSTNAME=$(uci -q get 'fff.system.hostname')
>  hood="$(uci -q get "system.@system[0].hood")"
> diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
> index 01506fce..b0db89c9 100755
> --- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
> +++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/ports.html
> @@ -1,7 +1,7 @@
>  #!/usr/bin/haserl
>  
>  <%
> -board_name=$(uci -q get board.model.name)
> +board_name=$(uci -q get board.model.name | sed 's/,/_/')
>  # write
>  if [ "$REQUEST_METHOD" = "POST" ] ; then
>  	if [ "$POST_change_mode" != "" ] ; then
> diff --git a/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard b/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
> index 69a3d74d..6a37c8fe 100644
> --- a/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
> +++ b/src/packages/fff/fff-wireguard/files/etc/gateway.d/50-wireguard
> @@ -3,7 +3,7 @@
>  . /lib/functions/fff/babel
>  
>  #load board specific properties
> -BOARD="$(uci get board.model.name)"
> +BOARD="$(uci get board.model.name | sed 's/,/_/')"
>  . /etc/network.$BOARD
>  
>  configure() {
> diff --git a/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless b/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
> index d4f2267e..c09d451b 100644
> --- a/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
> +++ b/src/packages/fff/fff-wireless/files/etc/uci-defaults/24b-config-wireless
> @@ -6,7 +6,7 @@ BOARD="$(uci get board.model.name)"
>  
>  # antenna gain
>  case "$BOARD" in
> -	tl-wr1043nd-v1)
> +	tplink,tl-wr1043nd-v1)
>  		uci set wireless.radio0.antenna_gain=3
>  		uci commit wireless
>  		;;
> @@ -32,9 +32,7 @@ case "$BOARD" in
>  		uci set wireless.radio0.antenna_gain=3
>  		uci commit wireless
>  		;;
> -	ubnt-unifiac-lite)
> -		# These are the values for the AC MESH.
> -		# The actual AC Lite has different values
> +	ubnt,unifiac-mesh)
>  		uci set wireless.radio0.antenna_gain=4
>  		uci set wireless.radio1.antenna_gain=3
>  		uci commit wireless
>
Adrian Schmutzler March 16, 2020, 4:05 p.m.
Hallo,

> From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf Of Fabian Bläse
> Sent: Montag, 16. März 2020 16:02
> To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; franken-dev@freifunk.net
> Subject: Re: [RFC/RFT PATCH v2] Migrate subset of devices to ath79 target
>
> Bin ich sehr dafür. Wollen wir vorher nochmal ein 19.07 Release machen? 
> Wir hatten uns ja vorgenommen, Änderungen häufiger zu veröffentlichen. 

Unbedingt. Alleine schon, um die Fehler bei den Nutzern besser isolieren zu können.
Hast du schon wegen ath10k-ct getestet?

Wenn du das grundsätzlich jetzt schon angehen möchtest, einige Anmerkungen/Fragen:
- Es sind nicht alle ath79-Geräte in 19.07 enthalten (z.B. WDR3500, CPE210 v1, etc.). Hier könnte man entweder diese Geräte auf ar71xx belassen oder ich könnte die entsprechenden Patches backporten. Was ist dir lieber?
- Für ath79 stellt sich wieder die generic vs. tiny Frage. In 19.07 ist es für ath79 wahrscheinlich sogar einfacher, alles als tiny zu bauen, da man die MACH Symbole nicht mehr braucht. Ab dem nächsten stable Release werden dann aber die base-files zwischen den subtargets aufgeteilt, und dann kannst du die Targets nicht mehr wie bisher zusammenführen. Entsprechend müsste man eine Trennung von generic und tiny dann ohnehin einführen. Du solltest dir also überlegen, ob du das dann nicht gleich machen willst, um doppelte Arbeit zu sparen.
- Wenn grundsätzlich Interesse besteht und die Fragen geklärt sind, würde ich das Ganze nochmal in schön bauen (und ggf. mehrere Patches verwenden, bin noch nicht sicher).

Grüße

Adrian