This is the mail archive of the 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: Alpha release eCos NAND Flash, eCos YAFFS

On Fri, Nov 28, 2008 at 01:30:23AM +0100, Rutger Hofman wrote:
> Last time I visited a conference, everybody spoke about 'Release early,  
> release often'.
> Here comes an alpha release of the eCos NAND Flash library and the eCos  
> YAFFS wrapper library (r536 of our repository).

Thanks for showing us the code at this early state. I just started
browsing through it.

It is nice to see the documentation. 


If a function fails, a global variable is set that indicates where the
error occurred and for what reason

I don't like this. How do you protect against race conditions with
multiple threads doing accesses? It either needs to be a variable
passed with each function call, or at least in thread local storage.


cyg_flash_get_info() -> cyg_nand_get_info() 


"use_cache is a boolean". eCos has a boolean type, cyg_bool. 

Checks the BBT (Bad Block Table) if this block is good, worn bad,
reserved, or factory-bad. If no BBT is used, attempts to check the
chip for factory-bad marks.

The last sentence makes no sense.

I'm not so happy with cyg_hal_gpio_*. 

The idea of generic GPIO functions needs to be discussed in the bigger
context. More likely these need to be HAL macros, CYG_HAL_GPIO_SET().
We want these to be fast as generally they are just two or three
assembly instructions. Doing a function call is too expensive in most
cases. You also need a generic way to address pins. The AT91 var hal
has some ideas here.

You can submit your NOR driver for the blackfin board anytime. It is
separate for NAND.

Sorry, no more time. I will try to take a further look some other


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