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]

Re: ROM, RAM and sections question


Am Freitag, 2. März 2007 12:55 schrieb Gary Thomas:
> Lars Poeschel wrote:
> > 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) ?
>
> The problem is that eCos code is not position independent - you
> must load and execute it at the location it was linked for.

This was the hint I needed.

> Look at how it's done for other platforms - the RAM configurations
> explicitly use memory that does not conflict with RedBoot's usage.

Thanks, I got it working now.

--
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]