diff --git a/include/image-commands.mk b/include/image-commands.mk
index fa368850388d095131245c796c0f644fa5d2eda6..1c9e8c12bb5fa8d9c073230c775e440524dc1f81 100644
--- a/include/image-commands.mk
+++ b/include/image-commands.mk
@@ -232,6 +232,7 @@ define Build/fit
 				-i $(KERNEL_BUILD_DIR)/initrd.cpio$(strip $(call Build/initrd_compression)))) \
 		-a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
 		$(if $(DEVICE_FDT_NUM),-n $(DEVICE_FDT_NUM)) \
+		$(if $(DEVICE_DTS_DELIMITER),-l $(DEVICE_DTS_DELIMITER)) \
 		$(if $(DEVICE_DTS_OVERLAY),$(foreach dtso,$(DEVICE_DTS_OVERLAY), -O $(dtso):$(KERNEL_BUILD_DIR)/image-$(dtso).dtb)) \
 		-c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config-1") \
 		-A $(LINUX_KARCH) -v $(LINUX_VERSION)
diff --git a/scripts/mkits.sh b/scripts/mkits.sh
index 1add8087b028cbbbc4234454d991be8db5d39cfa..f6699384ee6b14ba2cd95d199c6051e10f4ae87a 100755
--- a/scripts/mkits.sh
+++ b/scripts/mkits.sh
@@ -32,12 +32,14 @@ usage() {
 	printf "\n\t-d ==> include Device Tree Blob 'dtb'"
 	printf "\n\t-r ==> include RootFS blob 'rootfs'"
 	printf "\n\t-H ==> specify hash algo instead of SHA1"
+	printf "\n\t-l ==> legacy mode character (@ etc otherwise -)"
 	printf "\n\t-o ==> create output file 'its_file'"
 	printf "\n\t-O ==> create config with dt overlay 'name:dtb'"
 	printf "\n\t\t(can be specified more than once)\n"
 	exit 1
 }
 
+REFERENCE_CHAR='-'
 FDTNUM=1
 ROOTFSNUM=1
 INITRDNUM=1
@@ -46,7 +48,7 @@ LOADABLES=
 DTOVERLAY=
 DTADDR=
 
-while getopts ":A:a:c:C:D:d:e:f:i:k:n:o:O:v:r:H:" OPTION
+while getopts ":A:a:c:C:D:d:e:f:i:k:l:n:o:O:v:r:H:" OPTION
 do
 	case $OPTION in
 		A ) ARCH=$OPTARG;;
@@ -59,6 +61,7 @@ do
 		f ) COMPATIBLE=$OPTARG;;
 		i ) INITRD=$OPTARG;;
 		k ) KERNEL=$OPTARG;;
+		l ) REFERENCE_CHAR=$OPTARG;;
 		n ) FDTNUM=$OPTARG;;
 		o ) OUTPUT=$OPTARG;;
 		O ) DTOVERLAY="$DTOVERLAY ${OPTARG}";;
@@ -91,7 +94,7 @@ fi
 # Conditionally create fdt information
 if [ -n "${DTB}" ]; then
 	FDT_NODE="
-		fdt-$FDTNUM {
+		fdt${REFERENCE_CHAR}$FDTNUM {
 			description = \"${ARCH_UPPER} OpenWrt ${DEVICE} device tree blob\";
 			${COMPATIBLE_PROP}
 			data = /incbin/(\"${DTB}\");
@@ -107,12 +110,12 @@ if [ -n "${DTB}" ]; then
 			};
 		};
 "
-	FDT_PROP="fdt = \"fdt-$FDTNUM\";"
+	FDT_PROP="fdt = \"fdt${REFERENCE_CHAR}$FDTNUM\";"
 fi
 
 if [ -n "${INITRD}" ]; then
 	INITRD_NODE="
-		initrd-$INITRDNUM {
+		initrd${REFERENCE_CHAR}$INITRDNUM {
 			description = \"${ARCH_UPPER} OpenWrt ${DEVICE} initrd\";
 			${COMPATIBLE_PROP}
 			data = /incbin/(\"${INITRD}\");
@@ -127,7 +130,7 @@ if [ -n "${INITRD}" ]; then
 			};
 		};
 "
-	INITRD_PROP="ramdisk=\"initrd-${INITRDNUM}\";"
+	INITRD_PROP="ramdisk=\"initrd${REFERENCE_CHAR}${INITRDNUM}\";"
 fi
 
 
@@ -149,7 +152,7 @@ if [ -n "${ROOTFS}" ]; then
 			};
 		};
 "
-	LOADABLES="${LOADABLES:+$LOADABLES, }\"rootfs-${ROOTFSNUM}\""
+	LOADABLES="${LOADABLES:+$LOADABLES, }\"rootfs${REFERENCE_CHAR}${ROOTFSNUM}\""
 fi
 
 # add DT overlay blobs
@@ -184,8 +187,8 @@ OVCONFIGS=""
 
 		config-$ovname {
 			description = \"OpenWrt ${DEVICE} with $ovname\";
-			kernel = \"kernel-1\";
-			fdt = \"fdt-$FDTNUM\", \"$ovnode\";
+			kernel = \"kernel${REFERENCE_CHAR}1\";
+			fdt = \"fdt${REFERENCE_CHAR}$FDTNUM\", \"$ovnode\";
 			${LOADABLES:+loadables = ${LOADABLES};}
 			${COMPATIBLE_PROP}
 			${INITRD_PROP}
@@ -201,7 +204,7 @@ DATA="/dts-v1/;
 	#address-cells = <1>;
 
 	images {
-		kernel-1 {
+		kernel${REFERENCE_CHAR}1 {
 			description = \"${ARCH_UPPER} OpenWrt Linux-${VERSION}\";
 			data = /incbin/(\"${KERNEL}\");
 			type = \"kernel\";
@@ -227,7 +230,7 @@ ${ROOTFS_NODE}
 		default = \"${CONFIG}\";
 		${CONFIG} {
 			description = \"OpenWrt ${DEVICE}\";
-			kernel = \"kernel-1\";
+			kernel = \"kernel${REFERENCE_CHAR}1\";
 			${FDT_PROP}
 			${LOADABLES:+loadables = ${LOADABLES};}
 			${COMPATIBLE_PROP}
diff --git a/target/linux/bcm53xx/image/Makefile b/target/linux/bcm53xx/image/Makefile
index b2a7da80c5236e2c958994a50e03124f884af59e..45355e1ec988a65ae760eabf96a709876c3891ee 100644
--- a/target/linux/bcm53xx/image/Makefile
+++ b/target/linux/bcm53xx/image/Makefile
@@ -328,10 +328,12 @@ define Device/meraki_mr32
 # if the partition is smaller than the old one.
   KERNEL_LOADADDR := 0x00008000
   KERNEL_INITRAMFS_SUFFIX := .bin
+  DEVICE_DTS_DELIMITER := @
+  DEVICE_DTS_CONFIG := config@1
   KERNEL_INITRAMFS := kernel-bin | fit none $$(DTS_DIR)/$$(DEVICE_DTS).dtb | \
 	pad-to 10362880
   KERNEL := kernel-bin | fit none $$(DTS_DIR)/$$(DEVICE_DTS).dtb
-  IMAGES := sysupgrade.bin
+  IMAGES += sysupgrade.bin
 # Currently the only device that uses the new image check
   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
 
@@ -437,7 +439,7 @@ define Device/tplink_archer-c5-v2
   TPLINK_BOARD := ARCHER-C5-V2
   BROKEN := y
 endef
-TARGET_DEVICES += tplink_archer-c5-v2
+#TARGET_DEVICES += tplink_archer-c5-v2
 
 define Device/tplink_archer-c9-v1
   DEVICE_VENDOR := TP-Link
@@ -449,6 +451,6 @@ define Device/tplink_archer-c9-v1
   TPLINK_BOARD := ARCHERC9
   BROKEN := y
 endef
-TARGET_DEVICES += tplink_archer-c9-v1
+#TARGET_DEVICES += tplink_archer-c9-v1
 
 $(eval $(call BuildImage))