On 23 September 2015 at 08:17, Marcin Krzemiński <mar.krzemin...@gmail.com> 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