On 23 September 2015 at 08:17, Marcin Krzemiński
<address@hidden> wrote:
Hello,
I am trying to write a model of embedded board that have corterx-m3 and
cotex a9 processors.
Because M3 see different memory at address 0x0 than A9 (m3 has small rom, a9
has whole ram) I created different address space for m3 (thanks Peter
Crosthwaite! for hints how to do this!).
Now I stacked at loading "kernel" to start M3. If I use default address
space for M3 I can load I run my elf filr (it can be image, but currently it
is easiest for me with elf) all works fine.
The problem is when I switch to my new (root MR is not from
get_system_memory() call ) i got execution outside RAM exception.
That is happening because there are only zeroes in memory pointed by my
second address space.
The question is how can I load image to this memory (it might be elf, but
binary image also is fine)?
I can not even find the code that loads data to memory in fist place. Could
you point me where the loading is done in the code?
This is going to be complicated. I suspect you will need to add
some infrastructure for specifying per-CPU image loading (maybe
via CPU properties?), which we don't have at all right now.
(Our current image loading code for arm lives in hw/arm/boot.c.)
thanks
-- PMM