[openwrt/openwrt] scripts: mkits.sh: Allow legacy @ mode for dts creation

LEDE Commits lede-commits at lists.infradead.org
Thu Sep 23 11:51:57 PDT 2021


chunkeey pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/fd67908647390b916470501c88b4f5258123da95

commit fd67908647390b916470501c88b4f5258123da95
Author: Damien Mascord <tusker at tusker.org>
AuthorDate: Mon Jul 19 14:21:44 2021 +1000

    scripts: mkits.sh: Allow legacy @ mode for dts creation
    
    commit 5ec60cbe9d94 ("scripts: mkits.sh: replace @ with - in nodes")
    broke support for Meraki MR32 and this patch makes the replacement
    configurable allowing for specifying the @ or - or whatever character
    that is desired to retain backwards compatibility with existing devices.
    
    For example, this patch includes the fix for the Meraki MR32 in
    target/linux/bcm53xx/image for meraki_mr32:
    
      DEVICE_DTS_DELIMITER := @
      DEVICE_DTS_CONFIG := config at 1
    
    Fixes: 5ec60cbe9d94 ("scripts: mkits.sh: replace @ with - in nodes")
    Signed-off-by: Damien Mascord <tusker at tusker.org>
    [Added tags, checkpatch.pl fixes, noted that this is for old stuff]
    Signed-off-by: Christian Lamparter <chunkeey at gmail.com>
---
 include/image-commands.mk           |  1 +
 scripts/mkits.sh                    | 23 +++++++++++++----------
 target/linux/bcm53xx/image/Makefile |  8 +++++---
 3 files changed, 19 insertions(+), 13 deletions(-)

diff --git a/include/image-commands.mk b/include/image-commands.mk
index fa36885038..1c9e8c12bb 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 1add8087b0..f6699384ee 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 b2a7da80c5..45355e1ec9 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 at 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))



More information about the lede-commits mailing list