This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ROM, RAM and sections question


Hello!
I am porting ecos to fr30 architecture and got redboot running from flash. My 
development board has flash from 0x80000-0x800000 and ram from 
0x2000000-0x2800000. So I fixed output section with vector table (fixed 
vectors) to 0x2000000, following data and bss sections for the ROM case.
In RAM case I have fixed vectors at 0x2000000 following text, data and bss.
As I said redboot runs and gives me the following memory message:
RAM: 0x02000000-0x027fffff, [0x02007000-0x027fffff] available

Now I want to load my RAM built hello example using redboot.
It complains:
*** Abort! Attempt to load ELF data to address: 0x02000054 which is not valid

Ok this is not valid since redboot uses this area, but if I load it to another 
address 0x2100000 for example, it simply crashes my board. I could trace that 
redboots trampoline function correctly calls the entry point of the 
application, which is 0x2100500 for that case. The hello example built for 
ROM and burned to flash runs fine.
I think that the relocation redboot seems to do does not work correct for me.
My questions are, if it is correct to lay the fixed vectors to the beginning 
of RAM and if it is the normal case, the redboot has to relocate RAM binaries 
it loads. What do I have to change in my memory layout (maybe to have redboot 
not to relocate the loaded binary) ?

Thanks,
Lars

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]