From: Andrei Cherechesu <andrei.cherech...@nxp.com>

Added the parsing for APPEND_EXTRA_CMDS variable, which enables the
user to specify the path to a text file that contains, on each line,
u-boot commands that will be added to the generated script as
"fixups", before the boot command.

The file specified by the APPEND_EXTRA_CMDS variable parameter will be
copied as-is in the generated script.

Signed-off-by: Andrei Cherechesu <andrei.cherech...@nxp.com>
---
 README.md                |  5 +++++
 scripts/uboot-script-gen | 11 +++++++++++
 2 files changed, 16 insertions(+)

diff --git a/README.md b/README.md
index cb15ca5..3566a6d 100644
--- a/README.md
+++ b/README.md
@@ -64,6 +64,7 @@ BOOT_AUX_FILE[1]="uboot.cfg"
 
 UBOOT_SOURCE="boot.source"
 UBOOT_SCRIPT="boot.scr"
+APPEND_EXTRA_CMDS="extra.txt"
 FDTEDIT="imagebuilder.dtb"
 FIT="boot.fit"
 FIT_ENC_KEY_DIR="dir/key"
@@ -197,6 +198,10 @@ Where:
   as you can pass -o FILENAME to uboot-script-gen as a command line
   parameter
 
+- APPEND_EXTRA_CMDS: is optional and specifies the path to a text file
+  containing extra u-boot commands to be added to the boot script before
+  the boot command. Useful for running custom fixup commands.
+
 - FDTEDIT is an optional and is off by default.  Specifies the output
   modified dtb, used for reference and fdt_std.
 
diff --git a/scripts/uboot-script-gen b/scripts/uboot-script-gen
index f8d2fb0..f72551a 100755
--- a/scripts/uboot-script-gen
+++ b/scripts/uboot-script-gen
@@ -416,6 +416,10 @@ function check_file_type()
     elif [ "$type" = "Device Tree Blob" ]
     then
         type="Device Tree Blob\|data"
+
+    elif [ "$type" = "text" ]
+    then
+        type="ASCII text"
     fi
 
     file -L $filename | grep "$type" &> /dev/null
@@ -1238,6 +1242,13 @@ device_tree_editing $device_tree_addr
 # disable device tree reloation
 echo "setenv fdt_high 0xffffffffffffffff" >> $UBOOT_SOURCE
 
+# append extra u-boot commands (fixups) to script before boot command
+if test "$APPEND_EXTRA_CMDS"
+then
+    check_file_type "$APPEND_EXTRA_CMDS" "text"
+    cat $APPEND_EXTRA_CMDS >> $UBOOT_SOURCE
+fi
+
 if test "$dynamic_loading_opt"
 then
     echo "$BOOT_CMD \${host_kernel_addr} - \${host_fdt_addr}" >> $UBOOT_SOURCE
-- 
2.35.1


Reply via email to