[U-Boot] scripts: RPi 2: only 1 out of 4 CPUs brought up
Jonas Jensen
jonas.jensen at gmail.com
Tue Jun 30 13:56:41 CEST 2015
Hello,
I have found the following issue with RPi 2:
Only 1 CPU is brought up when the kernel is started from script (see [1]).
All 4 CPUs are brought up if started "manually" typing in environment
variables from said script (see [2]).
U-Boot: 2015.04-rc5-gd6d345b
kernel: d9fa11803a0d2e3b1eaf4041ddd0ca5651300d96 branch rpi-4.1.y from
https://github.com/raspberrypi/linux
[1] Automatic boot: http://paste.debian.net/269052/
[2] Manual boot: http://paste.debian.net/269053/
[3] boot.scr.uimg: http://paste.debian.net/269066/
[4] environment variables: http://paste.debian.net/269067/
Example 1:
load mmc 0:1 ${scriptaddr} boot.scr.uimg; source ${scriptaddr}
.. result in linux bringing up only the first CPU
Example 2:
U-Boot> setenv fdtfile bcm2709-rpi-2-b.dtb
U-Boot> setenv bootargs earlyprintk console=tty0 console=ttyAMA0
root=/dev/mmcblk0p2 rootwait rw
U-Boot> fatload mmc 0:1 ${kernel_addr_r} zImage
U-Boot> fatload mmc 0:1 ${fdt_addr_r} ${fdtfile}
U-Boot> bootz ${kernel_addr_r} - ${fdt_addr_r}
.. result in linux bringing up all four CPUs
#u-boot Marex_ suggested adding "setenv fdt_high 0xffffffff" and
adding "sleep 1" between script commands none of which helped fix the
problem.
Is there a known fix or workaround?
I prefer something like boot.scr.uimg that can be added as a single
step enabling the correct environment.
Regards,
Jonas
More information about the U-Boot
mailing list