This is the mail archive of the
ecos-patches@sourceware.org
mailing list for the eCos project.
Re: Alpha release eCos NAND Flash, eCos YAFFS
- From: Andrew Lunn <andrew at lunn dot ch>
- To: Rutger Hofman <rutger at cs dot vu dot nl>
- Cc: eCos Patches List <ecos-patches at ecos dot sourceware dot org>, eCos Discuss List <ecos-discuss at ecos dot sourceware dot org>
- Date: Sun, 30 Nov 2008 11:53:17 +0100
- Subject: Re: Alpha release eCos NAND Flash, eCos YAFFS
- References: <492F3B9F.8090501@cs.vu.nl>
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.
ecos-nand-flash-api-err.html:
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.
ecos-nand-flash-api-anc.html:
cyg_flash_get_info() -> cyg_nand_get_info()
ecos-nand-flash-api-anc.html:
"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
time.
Andrew