RE: Re-entrancy of flash erase/write

Jonas Holmberg
2002-02-22T17:02:34Z

> Am I right in assuming that it is not possible to erase
> and/or write different blocks of the same flash chip
> concurrently ?

Some chips allow it and some don't. Those that allow it require all simultaneous erases to be started within a very short timeout. None of the chip drivers use that feature I think.

> If so, where is the lock in the MTD code that would
> prevent concurrent execution of erase/write on the
> same chip by multiple processes ?

I haven't got the code in front of me, but I think it is in the beginning of the erase_oneblock-functions (in cfi_cmdset_0002.c at least). There's a status variable in the flashchip struct and processes are put on a waitqueue if the chip is busy.

/Jonas