diff options
Diffstat (limited to '0008-ARM-tegra-rework-boot-scripts.patch')
-rw-r--r-- | 0008-ARM-tegra-rework-boot-scripts.patch | 77 |
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 + |