[ECOS] How do I run applications from flash?

Nick Garnett nickg@ecoscentric.com
Fri May 16 09:36:00 GMT 2003

Øyvind Harboe <oyvind.harboe@zylin.com> writes:

> > It should in theory just be a change of startup type from RAM to ROM
> > for the application. Something that most people do in the configtool.
> > There shouldn't be any real need for a flashapp.ecm file in the
> > repository.
> > 
> > You're right, however, that there doesn't appear to be any clear
> > explanation of how the startup types are used.
> I'm still a bit confused. 
> Can I use redboot_ROM.ecm for my application? 
> i.e.
> ecosconfig new eb40a default
> ecosconfig import ...../hal/arm/at91/eb40/misc/redhat_ROM.ecm
> ecosconfig tree
> make
> voila! I can now create application images that I can upload via
> my recently installed Redboot. 

No you cannot do this. redboot_ROM.ecm also changes other things that
you might not want changed in a non-redboot application. If you want
to use an import file to make a ROM application, then one containing
just the following is all you need:

cdl_savefile_version 1;
cdl_savefile_command cdl_savefile_version {};
cdl_savefile_command cdl_savefile_command {};
cdl_savefile_command cdl_configuration { description hardware template package };
cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };

cdl_option CYG_HAL_STARTUP {
        user_value ROM

This is my own rom.cfg file that I use for this purpose.

> Or...
> Recap of my goals below:
> - I want Redboot in flash. The user never upgrades Redboot. I believe
> I have correctly configured and built Redboot. Worked when I tried
> the ram version last week. (I'll test more next week.)
> - I'd then use Redboot to write the application to flash
> - I had planned to create a startup script with a "go" command w/a
> delay.
> - If the user needs to reprogram the application, he'll reboot,
> abort the startup script "go" command and write the application
> to flash. (Most likely we'll write a small app for this, I just
> recently put together a xmodem, ymodem, zmodem uploader using 
> lrzsz that I'm using from my Java program. 
> http://sources.redhat.com/ml/cygwin/2003-05/msg00740.html )

You will also need to make your own ROM .ldi file since the default
one would place the application code at the same place as RedBoot.

Nick Garnett                    eCos Kernel Architect
http://www.ecoscentric.com/     The eCos and RedBoot experts

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

More information about the Ecos-discuss mailing list