diff mbox series

[v2,5/6] mvebu: implement compatibility version for DSA migration

Message ID 20200714142825.16889-6-freifunk@adrianschmutzler.de
State Accepted
Delegated to: Adrian Schmutzler
Headers show
Series sysupgrade: introduce compatibility version for devices | expand

Commit Message

Adrian Schmutzler July 14, 2020, 2:28 p.m. UTC
This implements the newly introduced compat-version to prevent
upgrade between swconfig and DSA for mvebu.

Just define a compat version with minor increment and an appropriate
message for both image (in Makefile) and device (in base-files).

Having taken care of sysupgrade, we can put back the SUPPORTED_DEVICES
that have been removed in previous patches to prevent broken config.

While at it, fix alphabetic sorting in 02_network.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>

---

Added in v2
---
 .../base-files/etc/board.d/02_network         | 14 ++++++++------
 target/linux/mvebu/image/cortexa9.mk          | 19 +++++++++++++++++++
 2 files changed, 27 insertions(+), 6 deletions(-)

Comments

Paul Spooren July 16, 2020, 4:17 a.m. UTC | #1
On 14.07.20 04:28, Adrian Schmutzler wrote:
> This implements the newly introduced compat-version to prevent
> upgrade between swconfig and DSA for mvebu.
>
> Just define a compat version with minor increment and an appropriate
> message for both image (in Makefile) and device (in base-files).
>
> Having taken care of sysupgrade, we can put back the SUPPORTED_DEVICES
> that have been removed in previous patches to prevent broken config.
>
> While at it, fix alphabetic sorting in 02_network.
>
> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
>
> ---
>
> Added in v2
> ---
>   .../base-files/etc/board.d/02_network         | 14 ++++++++------
>   target/linux/mvebu/image/cortexa9.mk          | 19 +++++++++++++++++++
>   2 files changed, 27 insertions(+), 6 deletions(-)
>
> diff --git a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> index 9718b332a7..9255f2535e 100755
> --- a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> +++ b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> @@ -23,6 +23,7 @@ mvebu_setup_interfaces()
>   	linksys,wrt3200acm|\
>   	linksys,wrt32x)
>   		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
> +		ucidef_set_compat_version "1.1"
>   		;;
>   	marvell,a385-db-ap)
>   		ucidef_set_interfaces_lan_wan "eth0 eth1" "eth2"
> @@ -30,18 +31,19 @@ mvebu_setup_interfaces()
>   	marvell,axp-gp)
>   		ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
>   		;;
> -	solidrun,clearfog-pro-a1)
> -		# eth0 is standalone ethernet
> -		# eth1 is switch
> -		# eth2 is SFP
> -		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6" "eth0 eth2"
> -		;;
>   	solidrun,clearfog-base-a1)
>   		# eth0 is standalone ethernet
>   		# eth1 is standalone ethernet
>   		# eth2 is SFP
>   		ucidef_set_interfaces_lan_wan "eth1" "eth0 eth2"
>   		;;
> +	solidrun,clearfog-pro-a1)
> +		# eth0 is standalone ethernet
> +		# eth1 is switch
> +		# eth2 is SFP
> +		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6" "eth0 eth2"
> +		ucidef_set_compat_version "1.1"
> +		;;
>   	*)
>   		ucidef_set_interface_lan "eth0"
>   		;;
> diff --git a/target/linux/mvebu/image/cortexa9.mk b/target/linux/mvebu/image/cortexa9.mk
> index 7f0a2fe697..1a4c43d133 100644
> --- a/target/linux/mvebu/image/cortexa9.mk
> +++ b/target/linux/mvebu/image/cortexa9.mk
> @@ -6,6 +6,11 @@
>   # See /LICENSE for more information.
>   #
>   
> +define Device/dsa-migration
> +  DEVICE_COMPAT_VERSION := 1.1
> +  DEVICE_COMPAT_MESSAGE := Config cannot be migrated from swconfig to DSA
> +endef
Shouldn't this be defined in a more central place as it at least impacts 
two, later more targets?
> +
>   define Device/buffalo_ls421de
>     $(Device/NAND-128K)
>     DEVICE_VENDOR := Buffalo
> @@ -63,16 +68,19 @@ endef
>   
>   define Device/linksys_wrt1200ac
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT1200AC
>     DEVICE_ALT0_VENDOR := Linksys
>     DEVICE_ALT0_MODEL := Caiman
>     DEVICE_DTS := armada-385-linksys-caiman
>     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> +  SUPPORTED_DEVICES += armada-385-linksys-caiman linksys,caiman
>   endef
>   TARGET_DEVICES += linksys_wrt1200ac
>   
>   define Device/linksys_wrt1900acs
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT1900ACS
>     DEVICE_VARIANT := v1
>     DEVICE_ALT0_VENDOR := Linksys
> @@ -82,11 +90,13 @@ define Device/linksys_wrt1900acs
>     DEVICE_ALT1_MODEL := Shelby
>     DEVICE_DTS := armada-385-linksys-shelby
>     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> +  SUPPORTED_DEVICES += armada-385-linksys-shelby linksys,shelby
>   endef
>   TARGET_DEVICES += linksys_wrt1900acs
>   
>   define Device/linksys_wrt1900ac-v1
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT1900AC
>     DEVICE_VARIANT := v1
>     DEVICE_ALT0_VENDOR := Linksys
> @@ -94,32 +104,38 @@ define Device/linksys_wrt1900ac-v1
>     DEVICE_DTS := armada-xp-linksys-mamba
>     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
>     KERNEL_SIZE := 3072k
> +  SUPPORTED_DEVICES += armada-xp-linksys-mamba linksys,mamba
>   endef
>   TARGET_DEVICES += linksys_wrt1900ac-v1
>   
>   define Device/linksys_wrt1900ac-v2
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT1900AC
>     DEVICE_VARIANT := v2
>     DEVICE_ALT0_VENDOR := Linksys
>     DEVICE_ALT0_MODEL := Cobra
>     DEVICE_DTS := armada-385-linksys-cobra
>     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> +  SUPPORTED_DEVICES += armada-385-linksys-cobra linksys,cobra
>   endef
>   TARGET_DEVICES += linksys_wrt1900ac-v2
>   
>   define Device/linksys_wrt3200acm
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT3200ACM
>     DEVICE_ALT0_VENDOR := Linksys
>     DEVICE_ALT0_MODEL := Rango
>     DEVICE_DTS := armada-385-linksys-rango
>     DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
> +  SUPPORTED_DEVICES += armada-385-linksys-rango linksys,rango
>   endef
>   TARGET_DEVICES += linksys_wrt3200acm
>   
>   define Device/linksys_wrt32x
>     $(call Device/linksys)
> +  $(Device/dsa-migration)
>     DEVICE_MODEL := WRT32X
>     DEVICE_ALT0_VENDOR := Linksys
>     DEVICE_ALT0_MODEL := Venom
> @@ -127,6 +143,7 @@ define Device/linksys_wrt32x
>     DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
>     KERNEL_SIZE := 3072k
>     KERNEL := kernel-bin | append-dtb
> +  SUPPORTED_DEVICES += armada-385-linksys-venom linksys,venom
>   endef
>   TARGET_DEVICES += linksys_wrt32x
>   
> @@ -218,6 +235,7 @@ endef
>   TARGET_DEVICES += solidrun_clearfog-base-a1
>   
>   define Device/solidrun_clearfog-pro-a1
> +  $(Device/dsa-migration)
>     DEVICE_VENDOR := SolidRun
>     DEVICE_MODEL := ClearFog Pro
>     KERNEL_INSTALL := 1
> @@ -228,5 +246,6 @@ define Device/solidrun_clearfog-pro-a1
>     DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
>     UBOOT := clearfog-u-boot-spl.kwb
>     BOOT_SCRIPT := clearfog
> +  SUPPORTED_DEVICES += armada-388-clearfog armada-388-clearfog-pro
>   endef
>   TARGET_DEVICES += solidrun_clearfog-pro-a1
Adrian Schmutzler July 16, 2020, 9:19 a.m. UTC | #2
> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces@lists.openwrt.org]
> On Behalf Of Paul Spooren
> Sent: Donnerstag, 16. Juli 2020 06:18
> To: Adrian Schmutzler <freifunk@adrianschmutzler.de>; openwrt-
> devel@lists.openwrt.org
> Subject: Re: [PATCH v2 5/6] mvebu: implement compatibility version for DSA
> migration
> 
> 
> On 14.07.20 04:28, Adrian Schmutzler wrote:
> > This implements the newly introduced compat-version to prevent upgrade
> > between swconfig and DSA for mvebu.
> >
> > Just define a compat version with minor increment and an appropriate
> > message for both image (in Makefile) and device (in base-files).
> >
> > Having taken care of sysupgrade, we can put back the
> SUPPORTED_DEVICES
> > that have been removed in previous patches to prevent broken config.
> >
> > While at it, fix alphabetic sorting in 02_network.
> >
> > Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
> >
> > ---
> >
> > Added in v2
> > ---
> >   .../base-files/etc/board.d/02_network         | 14 ++++++++------
> >   target/linux/mvebu/image/cortexa9.mk          | 19
> +++++++++++++++++++
> >   2 files changed, 27 insertions(+), 6 deletions(-)
> >
> > diff --git
> > a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> > b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> > index 9718b332a7..9255f2535e 100755
> > --- a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> > +++ b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
> > @@ -23,6 +23,7 @@ mvebu_setup_interfaces()
> >   	linksys,wrt3200acm|\
> >   	linksys,wrt32x)
> >   		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
> > +		ucidef_set_compat_version "1.1"
> >   		;;
> >   	marvell,a385-db-ap)
> >   		ucidef_set_interfaces_lan_wan "eth0 eth1" "eth2"
> > @@ -30,18 +31,19 @@ mvebu_setup_interfaces()
> >   	marvell,axp-gp)
> >   		ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
> >   		;;
> > -	solidrun,clearfog-pro-a1)
> > -		# eth0 is standalone ethernet
> > -		# eth1 is switch
> > -		# eth2 is SFP
> > -		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6"
> "eth0 eth2"
> > -		;;
> >   	solidrun,clearfog-base-a1)
> >   		# eth0 is standalone ethernet
> >   		# eth1 is standalone ethernet
> >   		# eth2 is SFP
> >   		ucidef_set_interfaces_lan_wan "eth1" "eth0 eth2"
> >   		;;
> > +	solidrun,clearfog-pro-a1)
> > +		# eth0 is standalone ethernet
> > +		# eth1 is switch
> > +		# eth2 is SFP
> > +		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6"
> "eth0 eth2"
> > +		ucidef_set_compat_version "1.1"
> > +		;;
> >   	*)
> >   		ucidef_set_interface_lan "eth0"
> >   		;;
> > diff --git a/target/linux/mvebu/image/cortexa9.mk
> > b/target/linux/mvebu/image/cortexa9.mk
> > index 7f0a2fe697..1a4c43d133 100644
> > --- a/target/linux/mvebu/image/cortexa9.mk
> > +++ b/target/linux/mvebu/image/cortexa9.mk
> > @@ -6,6 +6,11 @@
> >   # See /LICENSE for more information.
> >   #
> >
> > +define Device/dsa-migration
> > +  DEVICE_COMPAT_VERSION := 1.1
> > +  DEVICE_COMPAT_MESSAGE := Config cannot be migrated from swconfig
> to
> > +DSA endef
> Shouldn't this be defined in a more central place as it at least impacts two,
> later more targets?

Thanks for having a look and thinking through my patchset.

I thought about this myself and ended up with a clear "No.".

compat-version is not just about DSA, but about incompatible changes to a certain device.
Nobody tells you that the first incompatible change, and thus version bump, will be due to DSA for all devices.
It may practically be the case that this will be similar for a lot of devices when doing DSA migration, but later there might be other bumps for other reasons that possibly won't be that global, so I don't want to move that definition too far away from the affected devices.

If we really end up with the majority of devices being migrated, and still have 1.1 for all of them, we might still consider to move this somewhere else.

Best

Adrian

> > +
> >   define Device/buffalo_ls421de
> >     $(Device/NAND-128K)
> >     DEVICE_VENDOR := Buffalo
> > @@ -63,16 +68,19 @@ endef
> >
> >   define Device/linksys_wrt1200ac
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT1200AC
> >     DEVICE_ALT0_VENDOR := Linksys
> >     DEVICE_ALT0_MODEL := Caiman
> >     DEVICE_DTS := armada-385-linksys-caiman
> >     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> > +  SUPPORTED_DEVICES += armada-385-linksys-caiman linksys,caiman
> >   endef
> >   TARGET_DEVICES += linksys_wrt1200ac
> >
> >   define Device/linksys_wrt1900acs
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT1900ACS
> >     DEVICE_VARIANT := v1
> >     DEVICE_ALT0_VENDOR := Linksys
> > @@ -82,11 +90,13 @@ define Device/linksys_wrt1900acs
> >     DEVICE_ALT1_MODEL := Shelby
> >     DEVICE_DTS := armada-385-linksys-shelby
> >     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> > +  SUPPORTED_DEVICES += armada-385-linksys-shelby linksys,shelby
> >   endef
> >   TARGET_DEVICES += linksys_wrt1900acs
> >
> >   define Device/linksys_wrt1900ac-v1
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT1900AC
> >     DEVICE_VARIANT := v1
> >     DEVICE_ALT0_VENDOR := Linksys
> > @@ -94,32 +104,38 @@ define Device/linksys_wrt1900ac-v1
> >     DEVICE_DTS := armada-xp-linksys-mamba
> >     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> >     KERNEL_SIZE := 3072k
> > +  SUPPORTED_DEVICES += armada-xp-linksys-mamba linksys,mamba
> >   endef
> >   TARGET_DEVICES += linksys_wrt1900ac-v1
> >
> >   define Device/linksys_wrt1900ac-v2
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT1900AC
> >     DEVICE_VARIANT := v2
> >     DEVICE_ALT0_VENDOR := Linksys
> >     DEVICE_ALT0_MODEL := Cobra
> >     DEVICE_DTS := armada-385-linksys-cobra
> >     DEVICE_PACKAGES += mwlwifi-firmware-88w8864
> > +  SUPPORTED_DEVICES += armada-385-linksys-cobra linksys,cobra
> >   endef
> >   TARGET_DEVICES += linksys_wrt1900ac-v2
> >
> >   define Device/linksys_wrt3200acm
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT3200ACM
> >     DEVICE_ALT0_VENDOR := Linksys
> >     DEVICE_ALT0_MODEL := Rango
> >     DEVICE_DTS := armada-385-linksys-rango
> >     DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio
> > mwlwifi-firmware-88w8964
> > +  SUPPORTED_DEVICES += armada-385-linksys-rango linksys,rango
> >   endef
> >   TARGET_DEVICES += linksys_wrt3200acm
> >
> >   define Device/linksys_wrt32x
> >     $(call Device/linksys)
> > +  $(Device/dsa-migration)
> >     DEVICE_MODEL := WRT32X
> >     DEVICE_ALT0_VENDOR := Linksys
> >     DEVICE_ALT0_MODEL := Venom
> > @@ -127,6 +143,7 @@ define Device/linksys_wrt32x
> >     DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-
> firmware-88w8964
> >     KERNEL_SIZE := 3072k
> >     KERNEL := kernel-bin | append-dtb
> > +  SUPPORTED_DEVICES += armada-385-linksys-venom linksys,venom
> >   endef
> >   TARGET_DEVICES += linksys_wrt32x
> >
> > @@ -218,6 +235,7 @@ endef
> >   TARGET_DEVICES += solidrun_clearfog-base-a1
> >
> >   define Device/solidrun_clearfog-pro-a1
> > +  $(Device/dsa-migration)
> >     DEVICE_VENDOR := SolidRun
> >     DEVICE_MODEL := ClearFog Pro
> >     KERNEL_INSTALL := 1
> > @@ -228,5 +246,6 @@ define Device/solidrun_clearfog-pro-a1
> >     DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
> >     UBOOT := clearfog-u-boot-spl.kwb
> >     BOOT_SCRIPT := clearfog
> > +  SUPPORTED_DEVICES += armada-388-clearfog armada-388-clearfog-pro
> >   endef
> >   TARGET_DEVICES += solidrun_clearfog-pro-a1
> 
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
diff mbox series

Patch

diff --git a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
index 9718b332a7..9255f2535e 100755
--- a/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
+++ b/target/linux/mvebu/cortexa9/base-files/etc/board.d/02_network
@@ -23,6 +23,7 @@  mvebu_setup_interfaces()
 	linksys,wrt3200acm|\
 	linksys,wrt32x)
 		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
+		ucidef_set_compat_version "1.1"
 		;;
 	marvell,a385-db-ap)
 		ucidef_set_interfaces_lan_wan "eth0 eth1" "eth2"
@@ -30,18 +31,19 @@  mvebu_setup_interfaces()
 	marvell,axp-gp)
 		ucidef_set_interface_lan "eth0 eth1 eth2 eth3"
 		;;
-	solidrun,clearfog-pro-a1)
-		# eth0 is standalone ethernet
-		# eth1 is switch
-		# eth2 is SFP
-		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6" "eth0 eth2"
-		;;
 	solidrun,clearfog-base-a1)
 		# eth0 is standalone ethernet
 		# eth1 is standalone ethernet
 		# eth2 is SFP
 		ucidef_set_interfaces_lan_wan "eth1" "eth0 eth2"
 		;;
+	solidrun,clearfog-pro-a1)
+		# eth0 is standalone ethernet
+		# eth1 is switch
+		# eth2 is SFP
+		ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6" "eth0 eth2"
+		ucidef_set_compat_version "1.1"
+		;;
 	*)
 		ucidef_set_interface_lan "eth0"
 		;;
diff --git a/target/linux/mvebu/image/cortexa9.mk b/target/linux/mvebu/image/cortexa9.mk
index 7f0a2fe697..1a4c43d133 100644
--- a/target/linux/mvebu/image/cortexa9.mk
+++ b/target/linux/mvebu/image/cortexa9.mk
@@ -6,6 +6,11 @@ 
 # See /LICENSE for more information.
 #
 
+define Device/dsa-migration
+  DEVICE_COMPAT_VERSION := 1.1
+  DEVICE_COMPAT_MESSAGE := Config cannot be migrated from swconfig to DSA
+endef
+
 define Device/buffalo_ls421de
   $(Device/NAND-128K)
   DEVICE_VENDOR := Buffalo
@@ -63,16 +68,19 @@  endef
 
 define Device/linksys_wrt1200ac
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT1200AC
   DEVICE_ALT0_VENDOR := Linksys
   DEVICE_ALT0_MODEL := Caiman
   DEVICE_DTS := armada-385-linksys-caiman
   DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+  SUPPORTED_DEVICES += armada-385-linksys-caiman linksys,caiman
 endef
 TARGET_DEVICES += linksys_wrt1200ac
 
 define Device/linksys_wrt1900acs
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT1900ACS
   DEVICE_VARIANT := v1
   DEVICE_ALT0_VENDOR := Linksys
@@ -82,11 +90,13 @@  define Device/linksys_wrt1900acs
   DEVICE_ALT1_MODEL := Shelby
   DEVICE_DTS := armada-385-linksys-shelby
   DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+  SUPPORTED_DEVICES += armada-385-linksys-shelby linksys,shelby
 endef
 TARGET_DEVICES += linksys_wrt1900acs
 
 define Device/linksys_wrt1900ac-v1
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT1900AC
   DEVICE_VARIANT := v1
   DEVICE_ALT0_VENDOR := Linksys
@@ -94,32 +104,38 @@  define Device/linksys_wrt1900ac-v1
   DEVICE_DTS := armada-xp-linksys-mamba
   DEVICE_PACKAGES += mwlwifi-firmware-88w8864
   KERNEL_SIZE := 3072k
+  SUPPORTED_DEVICES += armada-xp-linksys-mamba linksys,mamba
 endef
 TARGET_DEVICES += linksys_wrt1900ac-v1
 
 define Device/linksys_wrt1900ac-v2
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT1900AC
   DEVICE_VARIANT := v2
   DEVICE_ALT0_VENDOR := Linksys
   DEVICE_ALT0_MODEL := Cobra
   DEVICE_DTS := armada-385-linksys-cobra
   DEVICE_PACKAGES += mwlwifi-firmware-88w8864
+  SUPPORTED_DEVICES += armada-385-linksys-cobra linksys,cobra
 endef
 TARGET_DEVICES += linksys_wrt1900ac-v2
 
 define Device/linksys_wrt3200acm
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT3200ACM
   DEVICE_ALT0_VENDOR := Linksys
   DEVICE_ALT0_MODEL := Rango
   DEVICE_DTS := armada-385-linksys-rango
   DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
+  SUPPORTED_DEVICES += armada-385-linksys-rango linksys,rango
 endef
 TARGET_DEVICES += linksys_wrt3200acm
 
 define Device/linksys_wrt32x
   $(call Device/linksys)
+  $(Device/dsa-migration)
   DEVICE_MODEL := WRT32X
   DEVICE_ALT0_VENDOR := Linksys
   DEVICE_ALT0_MODEL := Venom
@@ -127,6 +143,7 @@  define Device/linksys_wrt32x
   DEVICE_PACKAGES += kmod-btmrvl kmod-mwifiex-sdio mwlwifi-firmware-88w8964
   KERNEL_SIZE := 3072k
   KERNEL := kernel-bin | append-dtb
+  SUPPORTED_DEVICES += armada-385-linksys-venom linksys,venom
 endef
 TARGET_DEVICES += linksys_wrt32x
 
@@ -218,6 +235,7 @@  endef
 TARGET_DEVICES += solidrun_clearfog-base-a1
 
 define Device/solidrun_clearfog-pro-a1
+  $(Device/dsa-migration)
   DEVICE_VENDOR := SolidRun
   DEVICE_MODEL := ClearFog Pro
   KERNEL_INSTALL := 1
@@ -228,5 +246,6 @@  define Device/solidrun_clearfog-pro-a1
   DEVICE_DTS := armada-388-clearfog-pro armada-388-clearfog-base
   UBOOT := clearfog-u-boot-spl.kwb
   BOOT_SCRIPT := clearfog
+  SUPPORTED_DEVICES += armada-388-clearfog armada-388-clearfog-pro
 endef
 TARGET_DEVICES += solidrun_clearfog-pro-a1