[ECOS] Supporting Paged Flash in eCos/RedBoot
Jonathan Larmour
jifl@eCosCentric.com
Tue Feb 18 16:15:00 GMT 2003
Ian Campbell wrote:
>
> For example the current page or physical base etc would go in
> flash_drv_info and be provided by the HAL flash driver e.g.
> devs/flash/arm/* while things like the number of blocks and their sizes
> come from the type of flash device e.g. devs/flash/intel/strata and go
> in the current flash_info. But -- we'll see how I get on, maybe I'm
> wrong.
The biggest issue I had when looking at this is how much RedBoot relies on
fixed block sizes. Various CDL options and configuration passed up from
the low level driver mixes numbers of blocks and sizes, thus implying a
fixed relationship between the two. RedBoot also expects flash to exist in
one contiguous region.
May I suggest for a major overhaul you consider a new version of flash.c
in redboot (i.e. just something like flash2.c), presenting a similar
external (user) interface. Obviously this goes hand in hand with changes
in io/flash. A flash driver can indicate which io/flash support and
therefore which redboot flash.c it wants.
This way you don't have to worry so much about breaking other flash
drivers. And you wouldn't have to get everything that's currently in
redboot's flash.c working in a new version straight away. Definitely one
of the good things about CDL!
I would have done it myself, but didn't have the appropriate hardware I
needed to test it with, or really the time since there wasn't any
money/business requirement behind it :-|.
Jifl
--
eCosCentric http://www.eCosCentric.com/ The eCos and RedBoot experts
--[ "You can complain because roses have thorns, or you ]--
--[ can rejoice because thorns have roses." -Lincoln ]-- Opinions==mine
--
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