qemu/hw/arm
Sylvain Garrigues b4850e5ae9 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 10b8ec73e6
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>
2016-04-21 12:10:17 +01:00
..
allwinner-a10.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
armv7m.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
ast2400.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
bcm2835_peripherals.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
bcm2836.c hw/arm/bcm2836: Wire up CPU timer interrupts correctly 2016-04-04 17:33:51 +01:00
boot.c hw/arm/boot: always clear r0 when booting kernels 2016-04-21 12:10:17 +01:00
collie.c hw/arm: Clean up includes 2016-01-18 16:33:32 +00:00
cubieboard.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
digic_boards.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
digic.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
exynos4_boards.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
exynos4210.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
fsl-imx25.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
fsl-imx31.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
gumstix.c machine: Use type_init() to register machine classes 2016-03-16 15:34:05 -03:00
highbank.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
imx25_pdk.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
integratorcp.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
kzm.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
mainstone.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
Makefile.objs hw/arm: Add palmetto-bmc machine 2016-03-16 17:42:18 +00:00
musicpal.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
netduino2.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
nseries.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
omap1.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
omap2.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
omap_sx1.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
palm.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
palmetto-bmc.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
pxa2xx_gpio.c hw/arm: Clean up includes 2016-01-18 16:33:32 +00:00
pxa2xx_pic.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
pxa2xx.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
raspi.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
realview.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
spitz.c Replaced get_tick_per_sec() by NANOSECONDS_PER_SECOND 2016-03-22 22:20:17 +01:00
stellaris.c Replaced get_tick_per_sec() by NANOSECONDS_PER_SECOND 2016-03-22 22:20:17 +01:00
stm32f205_soc.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
strongarm.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
strongarm.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
sysbus-fdt.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
tosa.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
versatilepb.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
vexpress.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
virt-acpi-build.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
virt.c ARM: Virt: Use gpio_key for power button 2016-03-30 17:27:22 +01:00
xilinx_zynq.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
xlnx-ep108.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
xlnx-zynqmp.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
z2.c ssi: Move ssi.h into a separate directory 2016-01-21 14:15:03 +00:00