diff mbox

[Bug,1572329,NEW] ARM emulation: r0 != 0 on boot

Message ID 6484CC7F-79A8-4AE2-95FA-B1C2743A02A8@sylvaingarrigues.com (mailing list archive)
State New, archived
Headers show

Commit Message

Sylvain Garrigues April 20, 2016, 2:31 p.m. UTC
Signed-off-by: Sylvain Garrigues <sylvain@sylvaingarrigues.com>

Fix link register patch follows:



> Le 20 avr. 2016 à 16:21, Peter Maydell <peter.maydell@linaro.org> a écrit :
> 
> On 19 April 2016 at 23:34, Sylvain <sylvain@sylvaingarrigues.com> wrote:
>> # arm-softmmu/qemu-system-arm -M raspi2 -m 1024 -smp 4 -kernel
>> kernel.bin -serial stdio -dtb rpi2.dtb
>> 
>> My code shows r0 = 0x31 while it should be 0.
> 
> Hi. Thanks for this bug report and the patch. In order
> for us to be able to use your patch, we'll need you to
> provide a signed-off-by line, which tells us you have
> the legal right to submit it and are happy for us to
> include it in QEMU under QEMU's licensing terms.
> (You can look at
> http://wiki.qemu.org/Contribute/SubmitAPatch#Patch_emails_must_include_a_Signed-off-by:_line
> if you want more details.)
> 
> You can provide a signoff just by replying to this email
> with a line which reads
> "Signed-off-by: Your Name <your.email@here>".
> 
> A couple of notes: this bug only affects boards which
> have a write_board_setup function, which means only
> highbank/midway, raspi2, and xilinx_zynq; that's probably
> why we didn't spot it earlier.
> 
> thanks
> -- PMM
diff mbox

Patch

diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index 5975fbf..5876945 100644
--- a/hw/arm/boot.c
+++ b/hw/arm/boot.c
@@ -68,7 +68,7 @@  static const ARMInsnFixup bootloader_aarch64[] = {
  */
 
 static const ARMInsnFixup bootloader[] = {
-    { 0xe28fe008 }, /* add     lr, pc, #8 */
+    { 0xe28fe004 }, /* add     lr, pc, #4 */
     { 0xe51ff004 }, /* ldr     pc, [pc, #-4] */
     { 0, FIXUP_BOARD_SETUP },
 #define BOOTLOADER_NO_BOARD_SETUP_OFFSET 3