summaryrefslogtreecommitdiff
path: root/board/freescale/imx8mm_evk
diff options
context:
space:
mode:
authorAlice Guo <alice.guo@nxp.com>2020-12-18 09:50:08 +0300
committerStefano Babic <sbabic@denx.de>2021-01-23 13:30:31 +0300
commit9b8656bd2ba1ffc10e4e927da3c491c844369bd4 (patch)
treeae0ac2573aea303559695d35c49dfaa61454e3c3 /board/freescale/imx8mm_evk
parent2df8930bf9bfaa37d4626060832785ae25f467b4 (diff)
downloadu-boot-9b8656bd2ba1ffc10e4e927da3c491c844369bd4.tar.xz
board: imx8mm: add boot.cmd for distro boot on iMX8MM
Distro Boot requires a U-Boot-specific script named boot.scr or boot.scr.uimg which contains boot commands to boot the system. The boot.cmd is such a file. Use mkimage to generate boot.scr or boot.scr.uimg from boot.cmd, and the command is: mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n "Distro Boot Script" -d boot.cmd boot.scr.uimg The boot.cmd file is an example script and can be modified based on needs. bootargs is set in this script and root uses the default value " /dev/mmcblk1p2 rootwait rw" which can be changed by overriding mmcroot. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Alice Guo <alice.guo@nxp.com>
Diffstat (limited to 'board/freescale/imx8mm_evk')
-rw-r--r--board/freescale/imx8mm_evk/boot.cmd35
1 files changed, 35 insertions, 0 deletions
diff --git a/board/freescale/imx8mm_evk/boot.cmd b/board/freescale/imx8mm_evk/boot.cmd
new file mode 100644
index 0000000000..fdfceec263
--- /dev/null
+++ b/board/freescale/imx8mm_evk/boot.cmd
@@ -0,0 +1,35 @@
+setenv bootargs console=${console} root=${mmcroot};
+
+for boot_target in ${boot_targets};
+do
+ if test "${boot_target}" = "mmc1" ; then
+ if fatload mmc 1:${mmcpart} ${kernel_addr_r} ${image}; then
+ if fatload mmc 1:${mmcpart} ${fdt_addr} ${fdt_file}; then
+ echo Load image and .dtb from SD card(mmc1);
+ booti ${kernel_addr_r} - ${fdt_addr};
+ exit;
+ fi
+ fi
+ fi
+
+ if test "${boot_target}" = "mmc2" ; then
+ if fatload mmc 2:${mmcpart} ${kernel_addr_r} ${image}; then
+ if fatload mmc 2:${mmcpart} ${fdt_addr} ${fdt_file}; then
+ echo Load image and .dtb from eMMC(mmc2);
+ booti ${kernel_addr_r} - ${fdt_addr};
+ exit;
+ fi
+ fi
+ fi
+
+ if test "${boot_target}" = "dhcp" ; then
+ if dhcp ${kernel_addr_r} ${serverip}:${image}; then
+ if dhcp ${fdt_addr} ${serverip}:${fdt_file}; then
+ echo Load image and .dtb from net(dhcp);
+ booti ${kernel_addr_r} - ${fdt_addr};
+ exit;
+ fi
+ fi
+ fi
+
+done