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