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: Supporting Paged Flash in eCos/RedBoot


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]