summaryrefslogtreecommitdiffstats
path: root/0008-ARM-tegra-rework-boot-scripts.patch
diff options
context:
space:
mode:
Diffstat (limited to '0008-ARM-tegra-rework-boot-scripts.patch')
-rw-r--r--0008-ARM-tegra-rework-boot-scripts.patch77
1 files changed, 77 insertions, 0 deletions
diff --git a/0008-ARM-tegra-rework-boot-scripts.patch b/0008-ARM-tegra-rework-boot-scripts.patch
new file mode 100644
index 0000000..7ad7774
--- /dev/null
+++ b/0008-ARM-tegra-rework-boot-scripts.patch
@@ -0,0 +1,77 @@
+From 4955e853853d6056363b9ed71bacedc214f96884 Mon Sep 17 00:00:00 2001
+From: Stephen Warren <swarren@nvidia.com>
+Date: Thu, 23 Jan 2014 13:17:03 -0700
+Subject: [PATCH 08/13] ARM: tegra: rework boot scripts
+
+Update the common Tegra boot scripts in the default environment to
+
+a) Make use of the new "exists" shell command to avoid some error
+ messges.
+
+b) Allow booting using the sysboot command and extlinux.conf. This
+ allows easy creation of boot menus, and provides a simple interface
+ for distros to parameterize/configure the boot process.
+
+Signed-off-by: Stephen Warren <swarren@nvidia.com>
+---
+ include/configs/tegra-common-post.h | 39 ++++++++++++++++++++++++++++---------
+ 1 file changed, 30 insertions(+), 9 deletions(-)
+
+diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
+index a3242fe..493f6df 100644
+--- a/include/configs/tegra-common-post.h
++++ b/include/configs/tegra-common-post.h
+@@ -69,20 +69,41 @@
+ #define BOOTCMDS_COMMON \
+ "rootpart=1\0" \
+ \
++ "do_script_boot=" \
++ "load ${devtype} ${devnum}:${rootpart} " \
++ "${scriptaddr} ${prefix}${script}; " \
++ "source ${scriptaddr}\0" \
++ \
+ "script_boot=" \
+- "if load ${devtype} ${devnum}:${rootpart} " \
+- "${scriptaddr} ${prefix}${script}; then " \
+- "echo ${script} found! Executing ...;" \
+- "source ${scriptaddr};" \
+- "fi;\0" \
++ "for script in ${boot_scripts}; do " \
++ "if exists ${devtype} ${devnum}:${rootpart} " \
++ "${prefix}${script}; then " \
++ "echo Found U-Boot script " \
++ "${prefix}${script}; " \
++ "run do_script_boot;" \
++ "echo SCRIPT FAILED; continuing...; " \
++ "fi; " \
++ "done\0" \
++ \
++ "do_sysboot_boot=" \
++ "sysboot ${devtype} ${devnum}:${rootpart} any " \
++ "${scriptaddr} ${prefix}extlinux.conf\0" \
++ \
++ "sysboot_boot=" \
++ "if exists ${devtype} ${devnum}:${rootpart} " \
++ "${prefix}extlinux.conf; then " \
++ "echo Found extlinux config " \
++ "${prefix}extlinux.conf; " \
++ "run do_sysboot_boot;" \
++ "echo SCRIPT FAILED; continuing...; " \
++ "fi\0" \
+ \
+ "scan_boot=" \
+ "echo Scanning ${devtype} ${devnum}...; " \
+ "for prefix in ${boot_prefixes}; do " \
+- "for script in ${boot_scripts}; do " \
+- "run script_boot; " \
+- "done; " \
+- "done;\0" \
++ "run script_boot; " \
++ "run sysboot_boot; " \
++ "done\0" \
+ \
+ "boot_targets=" \
+ BOOT_TARGETS_MMC " " \
+--
+1.8.5.3
+