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