xref: /openbmc/u-boot/board/k+p/bootscripts/tpcboot.cmd (revision e470efd2d909ace1cae328d62d56d2a0c0c00462)
1 # SPDX-License-Identifier: GPL-2.0+
2 #
3 # Copyright (C) 2018
4 # Lukasz Majewski, DENX Software Engineering, lukma@denx.de
5 # This is an example file to generate boot.scr - a boot script for U-Boot
6 # Generate boot.scr:
7 # ./tools/mkimage -c none -A arm -T script -d tpcboot.cmd boot.scr
8 #
9 
10 
11 # Input envs (to be set in environment)
12 # Mandatory:
13 # kernel_file = "fitImage"
14 # boardname = "XXXX"  // set automatically in u-boot
15 # boardsoc = "imx6q"  // set automatically in u-boot
16 #
17 # Optional:
18 # bootcmd_force = "nfs" "tftp_kernel"
19 # If not set - eMMC/SD boot
20 
21 # Generic setup
22 setenv mmcroot "/dev/mmcblk${devnum}p2 rootwait rw"
23 setenv displayargs ""
24 setenv mmcargs "setenv bootargs console=${console} ${smp} root=${mmcroot} \
25 	${displayargs}"
26 setenv miscadj "
27 if test '${boardsoc}' = 'imx53'; then
28        setenv bootargs '${bootargs} di=${dig_in} key1=${key1}';
29 fi;"
30 setenv boot_fitImage "
31 	setenv fdt_conf 'conf@${boardsoc}-${boardname}.dtb';
32 	setenv itbcfg "\"#\${fdt_conf}\"";
33 	print itbcfg;
34 	bootm '${loadaddr}${itbcfg}';"
35 
36 #------------------------------------------------------------
37 #
38 # Provide default 'bootcmd' command
39 #------------------------------------------------------------
40 setenv bootcmd "
41 if test -e ${devtype} ${devnum}:${distro_bootpart} ${kernel_file}; then
42 	echo Found kernel image: ${kernel_file};
43 	if load ${devtype} ${devnum}:${distro_bootpart} ${loadaddr} \
44 	   ${kernel_file}; then
45 		run mmcargs;
46 		run miscadj;
47 		run boot_fitImage;
48 	fi;
49 fi;"
50 
51 #------------------------------------------------------------
52 #
53 # Provide 'boot_tftp_kernel' command
54 #------------------------------------------------------------
55 setenv download_kernel "dhcp ${loadaddr} ${kernel_file}"
56 
57 setenv boot_tftp_kernel "
58 if run download_kernel; then
59 	run mmcargs;
60 	run miscadj;
61 	run boot_fitImage;
62 fi"
63 
64 #------------------------------------------------------------
65 #
66 # Provide 'boot_nfs' command
67 #------------------------------------------------------------
68 setenv nfsargs "setenv bootargs root=/dev/nfs rw nfsroot='${rootpath}',nolock,nfsvers=3"
69 setenv addip "setenv bootargs '${bootargs}' ip='${ipaddr}':'${serverip}':'${gatewayip}':'${netmask}':'${hostname}':eth0:on"
70 
71 setenv boot_nfs "
72 if run download_kernel; then
73 	run nfsargs;
74 	run addip;
75 	setenv bootargs '${bootargs}' console=${console};
76 
77 	run boot_fitImage;
78 fi"
79 
80 #------------------------------------------------------------
81 #
82 # Set correct boot flow
83 #------------------------------------------------------------
84 
85 setenv bcmd "
86 if test ! -n ${bootcmd_force}; then
87 	run bootcmd;
88 fi;
89 if test ${bootcmd_force} = nfs; then
90 	run boot_nfs;
91 else if test ${bootcmd_force} = tftp_kernel; then
92 	run boot_tftp_kernel;
93      fi;
94 fi"
95 
96 run bcmd
97