This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: both redboot and application 'ROM' startup
Hi qiulinyuan
qiulinyuan wrote:
> Thanks for your response.
>
>>> Maybe I haven't expressed clearly.
>>> Because the RAM size is only 1M ,I want the application execute-in-place
>>> in flash to save RAM for usage.And the redboot also be needed for
>>> upgrading the application.
>>> I need both the redboot and application execute-in-place in flash.
>>> could you give me some suggestions about this ?
>> (Will your application really be so big that 1M isn't enough?)
>>
> Now the RAM space looks enough. But we will reduce the RAM size in future.
>
>> I suspect you would want to use ROM startup or create a new ROMAPP startup
>> type, with a modified memory map to locate it at a particular flash address,
>> probably with "use a ROM monitor" enabled. You would also have to configure
>> RedBoot to run it.
>>
> You are right.I want to use the 'go flashadress' to start the application
> after redboot startup.And the application execute-in-place in flash. Only
> the dynamic data should store in RAM.
>
>> However I have not done this myself so will have to leave the question open...
>>
> Thank you all the same.
>
> Does anyone have done this before?
I have certainly demonstrated this in training classes before. In some
cases, it may be sufficient to modify the ROM startup MLT files in the
platform HAL package:
include/pkgconf/mlt_*_rom.h
include/pkgconf/mlt_*_rom.ldi
to place the code at a higher address in Flash, aligned with a flash
block boundary.
Depending on the platform, there may be issues with re-executing the
machine initialisation code when you jump into the application code from
RedBoot. It's not elegant.
I hope this helps...
John Dallaway
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss