This is the mail archive of the ecos-discuss@sources.redhat.com 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: redboot startup mode


On Tue, 2005-05-24 at 17:41 +0100, yrodguez@iuma.ulpgc.es wrote:
> hi,
> i have a doubt/question?
> 
> i'm trying to compile a redboot in romram mode.
> 
> 
> At http://sources.redhat.com/ecos/docs-latest/redboot/excaliburarm9.html
> 
> say that romram mode runs redboot from ram with redboot in flash. I supossed
> that redboot is stored in flash memory and then it is copied from flash to ram.
> But when i desassemble the file i get the code is mapped on ram (0x8000):
> 

Correct.  It has to be that way - the linker produces an image suitable
for running from RAM.  That said, the image will be stored in FLASH 
(typically this is all that's accessible immediately after RESET).  The
program [RedBoot or whatever] then does some minimal hardware 
initialization, e.g. turning on the SDRAM controller, setting up mapping
registers, etc.  The code is then copied from FLASH to its ultimate RAM
destination and control is then passed there.  Now you are running from
RAM only.  It's up to the startup code to understand all of this and
it must contain [normally position-independent] code that performs these
steps at startup.

Note: this mode is only suitable for *the* initial "ROM" monitor code,
like RedBoot.  This is not how you would write a generic program which
runs in RAM but whose image was stored in FLASH.  For that, you use
RedBoot's FIS commands (create, load)

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


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