On 14 March 2010 15:56, Benjamin Bagland <bagl...@ashesoftime.net> wrote:
> Hi,
>
> I'm having an issue while trying to use the lm3s811 board emulation with
> qemu 0.12.3 or git. It works fine however with qemu-0.11.1.
>
> The problem comes from hw/armv7m.c, around line 231, the initial PC and SP
> are set by reading from physical memory, however the rom data is not copied
> in physical memory until the reset later on in the initialisation (comes
> from commit 45a50b1668822c23afc I think). Since the initial PC is invalid,
> the cpu goes straight into UsageFault instead of going to the proper reset
> routine.
>
> I've made a small patch to read from rom instead of physical memory, that
> fixes the issue with my test program but I'm not sure if it's the proper
> thing to do, or even if it works with other arm boards.

The patch seems to be generated on top of some code that is not in the
repository, but in short, I think both loading the kernel, roms, and
setting of pc and sp should be done only on reset.  There's probably a
bootloader somewhere that sets the pc and sp on real hw.

Cheers


Reply via email to