JFFS2 NAND flash support

Thomas Gleixner gleixner at autronix.de
Thu Mar 28 05:00:52 EST 2002

On Thursday, 28. March 2002 10:41, John Hall wrote:
> Which is the current development branch?
cvs -d :pserver:anoncvs at cvs.infradead.org:/home/cvs login (password: anoncvs)
cvs -d :pserver:anoncvs at cvs.infradead.org:/home/cvs co mtd
> Our hardware interface is a btit weird (ALE and CLE are controlled by
> address lines...). I also can get interrupts from the busy pin, so I've
> changed the code so it doesn't do busy waits as nand.c does.
Designed by hardware engineer, who never wrote a line of code :)
Can you please send me your changes. As I will rework the spinlock issue,
I will try to merge it into the current version. 

> OK - I hadn't looked at the latest versions very carefully. Now I've
> looked, I notice that if the erase fails the user callback is not
> called. The documentation on the mtd website seems to imply that you
> should set the status to FAILED and still call the callback. Is that
> correct?
No, doc is out of date
If you return 0 (.i.e. 'request queued OK') you must call the callback.
If you return nonzero (i.e. request not queued) you don't.

> But you're holding a spinlock to ensure that your driver doesn't get
> re-entered. Why do bottom halves need to be disabled at all?
As I said, I will take care of this in the next days.

> I'm just going by the Smartmedia spec. It says the maximum erase time is
> 400ms.
The Smartmedia spec is a general purpose paper. You must always use the chip 
datasheet at least. If the chip does not meet Smartmedia spec, you can 
complain about that, but it does not help you at all. :)
Thomas Gleixner <gleixner at autronix.de>
autronix automation http://www.autronix.de

More information about the linux-mtd mailing list