diff options
| author | Sylvain Garrigues <sylvain@sylvaingarrigues.com> | 2016-04-20 23:35:28 +0200 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2016-04-21 12:10:17 +0100 |
| commit | b4850e5ae9607f9f31932f693ca48f52619493d7 (patch) | |
| tree | d9e018e39bb407020c78b06b6f60bbd94f94e858 /iohandler.c | |
| parent | 81d9d1867f5210412ccd262b040cf579dc32ff55 (diff) | |
| download | focaccia-qemu-b4850e5ae9607f9f31932f693ca48f52619493d7.tar.gz focaccia-qemu-b4850e5ae9607f9f31932f693ca48f52619493d7.zip | |
hw/arm/boot: always clear r0 when booting kernels
The 32-bit ARM Linux kernel booting ABI requires that r0 is 0 when calling the kernel image. A bug in commit 10b8ec73e610e01 meant that for boards which use the write_board_setup hook (which means "highbank", "midway", "raspi2" and "xilinx-zynq-a9") we were incorrectly skipping the "clear r0" instruction in the mini-bootloader. Use the right offset in the "add lr, pc, #n" instruction so that we return from the board-setup code to the correct place. Signed-off-by: Sylvain Garrigues <sylvain@sylvaingarrigues.com> [PMM: Expanded commit message] Cc: qemu-stable@nongnu.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'iohandler.c')
0 files changed, 0 insertions, 0 deletions