]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
build: add dtb support for sysupgrade-tar
authorINAGAKI Hiroshi <musashino.open@gmail.com>
Mon, 8 Apr 2024 06:25:15 +0000 (15:25 +0900)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 22 Jun 2025 20:17:20 +0000 (22:17 +0200)
Add dtb support for Build/sysupgrade-tar definition and
sysupgrade-tar.sh script.
This changes are required for updating dtb separately.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/16904
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
include/image-commands.mk
scripts/sysupgrade-tar.sh

index ac3f305362b9e534cb0388b9f2d28acf2c71f3b9..ea21ca2bf0f60bf650bbe2fedf625c007b612fbf 100644 (file)
@@ -679,10 +679,12 @@ define Build/senao-header
 endef
 
 define Build/sysupgrade-tar
+       $(eval dtb=$(call param_get,dtb,$(1)))
        sh $(TOPDIR)/scripts/sysupgrade-tar.sh \
                --board $(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)) \
                --kernel $(call param_get_default,kernel,$(1),$(IMAGE_KERNEL)) \
                --rootfs $(call param_get_default,rootfs,$(1),$(IMAGE_ROOTFS)) \
+               $(if $(dtb),--dtb $(dtb)) \
                $@
 endef
 
index b93b2584bb4970bcb16650b893722444986fdf88..c101dbf00b204b683238c1cb4e5fede2f8bdbe7c 100755 (executable)
@@ -5,6 +5,7 @@
 board=""
 kernel=""
 rootfs=""
+dtb=""
 outfile=""
 err=""
 
@@ -28,6 +29,12 @@ while [ "$1" ]; do
                shift
                continue
                ;;
+       "--dtb")
+               dtb="$2"
+               shift
+               shift
+               continue
+               ;;
        *)
                if [ ! "$outfile" ]; then
                        outfile=$1
@@ -38,8 +45,8 @@ while [ "$1" ]; do
        esac
 done
 
-if [ ! -n "$board" -o ! -r "$kernel" -a  ! -r "$rootfs" -o ! "$outfile" ]; then
-       echo "syntax: $0 [--board boardname] [--kernel kernelimage] [--rootfs rootfs] out"
+if [ ! -n "$board" -o ! -r "$kernel" -a  ! -r "$rootfs" -o ! "$outfile" -o -n "$dtb" -a ! -r "$dtb" ]; then
+       echo "syntax: $0 [--board boardname] [--kernel kernelimage] [--rootfs rootfs] [--dtb dtb] out"
        exit 1
 fi
 
@@ -66,6 +73,7 @@ if [ -n "${rootfs}" ]; then
        esac
 fi
 [ -z "${kernel}" ] || cp "${kernel}" "${tmpdir}/sysupgrade-${board}/kernel"
+[ -z "${dtb}" ] || cp "${dtb}" "${tmpdir}/sysupgrade-${board}/dtb"
 
 mtime=""
 if [ -n "$SOURCE_DATE_EPOCH" ]; then