]> git.ipfire.org Git - ipfire-2.x.git/blame - config/u-boot/boot.cmd
u-boot: try to boot without ramdisk if the system cannot load it
[ipfire-2.x.git] / config / u-boot / boot.cmd
CommitLineData
592896d2
AF
1if test ${boot_dev} = ""; then
2 setenv boot_dev mmc;
3 setenv root_dev /dev/mmcblk0p3;
4fi;
5
6if test ${boot_part} = ""; then
cd99c473 7 setenv boot_part 0:1;
592896d2
AF
8fi;
9
10if test ${soc} = "kirkwood"; then
0487a49f 11 setenv kernel_type -kirkwood;
592896d2 12else
0487a49f
AF
13 if test ${cpu} = "armv8"; then
14 echo ;
15 else
16 setenv kernel_type -multi;
17 fi;
592896d2
AF
18fi;
19
2a0947f2 20# Import uEnv txt...
592896d2 21if fatload ${boot_dev} ${boot_part} ${kernel_addr_r} uEnv.txt; then
2a0947f2
AF
22 echo Load uEnv.txt...;
23 env import -t ${kernel_addr_r} ${filesize};
24 if test "${uenvcmd}" = ""; then
25 echo ...;
26 else
27 echo Boot with uEnv.txt...;
28 run uenvcmd;
29 fi;
30fi;
31
32# for compatiblity reasons set DTBSUNXI if we run on sunxi
33if test "${board}" = "sunxi"; then
34 setenv fdtfile ${DTBSUNXI};
35fi;
36
37# Check if serial console is enabled
38if test "${SERIAL-CONSOLE}" = "ON"; then
39 if test ${console} = ""; then
40 if test "${board}" = "rpi"; then
0487a49f 41 if test ${cpu} = "armv8"; then
ae84d374 42 if test "${fdtfile}" = "broadcom/bcm2837-rpi-3-b-plus.dtb"; then
0487a49f
AF
43 setenv console ttyS1,115200n8;
44 else
45 if test "${fdtfile}" = "broadcom/bcm2837-rpi-3-b.dtb"; then
46 setenv console ttyS1,115200n8;
47 else
48 setenv console ttyAMA0,115200n8;
49 fi;
50 fi;
2a0947f2 51 else
0487a49f 52 if test "${fdtfile}" = "bcm2837-rpi-3-b-plus.dtb"; then
959b404e
AF
53 setenv console ttyS1,115200n8;
54 else
0487a49f
AF
55 if test "${fdtfile}" = "bcm2837-rpi-3-b.dtb"; then
56 setenv console ttyS1,115200n8;
57 else
58 setenv console ttyAMA0,115200n8;
59 fi;
959b404e 60 fi;
2a0947f2
AF
61 fi;
62 else
63 setenv console ttyS0,115200n8;
64 fi;
65 fi
66 echo Set console to ${console};
a06f9daf 67 setenv bootargs console=${console} root=${root_dev} rootwait;
2a0947f2
AF
68else
69 echo Set console to tty1 ;
a06f9daf 70 setenv bootargs console=tty1 root=${root_dev} rootwait;
2a0947f2
AF
71fi;
72
73setenv fdt_high ffffffff;
0487a49f
AF
74fatload ${boot_dev} ${boot_part} ${kernel_addr_r} vmlinuz-${KVER}-ipfire${kernel_type};
75fatload ${boot_dev} ${boot_part} ${fdt_addr_r} dtb-${KVER}-ipfire${kernel_type}/${fdtfile};
e2a3147f
AF
76
77if test "${FDTCMDS}" = ""; then
78 echo ;
79else
80 fdt addr ${fdt_addr_r};
81 run FDTCMDS;
82fi;
83
592896d2 84setenv ramdisk_addr ${ramdisk_addr_r}
0487a49f 85if fatload ${boot_dev} ${boot_part} ${ramdisk_addr} uInit-${KVER}-ipfire${kernel_type}; then
2a0947f2
AF
86 echo Ramdisk loaded...;
87else
88 echo Ramdisk not loaded...;
592896d2 89 setenv ramdisk_addr -;
2a0947f2 90fi ;
592896d2 91bootz ${kernel_addr_r} ${ramdisk_addr} ${fdt_addr_r};
963f6e97 92booti ${kernel_addr_r} ${ramdisk_addr} ${fdt_addr_r};
2a0947f2 93
66811906
AF
94bootz ${kernel_addr_r} - ${fdt_addr_r};
95booti ${kernel_addr_r} - ${fdt_addr_r};
96
2a0947f2
AF
97# Recompile with:
98# mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr