From a208f0a9bec723e8bec3c45cc10931494d65156b Mon Sep 17 00:00:00 2001 From: David Bauer Date: Mon, 7 Nov 2022 00:42:40 +0100 Subject: mkits: support definition of DTB loadaddr Support defining a per-device loadaddress for the DTB. This is required for devices which to not align the DTB from the bootloader correctly. Signed-off-by: David Bauer --- scripts/mkits.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'scripts') diff --git a/scripts/mkits.sh b/scripts/mkits.sh index 7bf5681add..58c879cd62 100755 --- a/scripts/mkits.sh +++ b/scripts/mkits.sh @@ -35,6 +35,7 @@ usage() { 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-s ==> set FDT load address to 'addr' (hex)" printf "\n\t\t(can be specified more than once)\n" exit 1 } @@ -48,7 +49,7 @@ LOADABLES= DTOVERLAY= DTADDR= -while getopts ":A:a:c:C:D:d:e:f:i:k:l: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:s:H:" OPTION do case $OPTION in A ) ARCH=$OPTARG;; @@ -66,6 +67,7 @@ do o ) OUTPUT=$OPTARG;; O ) DTOVERLAY="$DTOVERLAY ${OPTARG}";; r ) ROOTFS=$OPTARG;; + s ) FDTADDR=$OPTARG;; H ) HASH=$OPTARG;; v ) VERSION=$OPTARG;; * ) echo "Invalid option passed to '$0' (options:$*)" @@ -91,6 +93,10 @@ fi DTADDR=$(printf "0x%08x" $(($LOAD_ADDR - $dtbsize)) ) } +[ "$FDTADDR" ] && { + DTADDR="$FDTADDR" +} + # Conditionally create fdt information if [ -n "${DTB}" ]; then FDT_NODE=" -- cgit v1.2.3