Anyone can help me about do_write_buffer at cfi_cmdset_0002
Gernot Hoyler
Gernot.Hoyler at spansion.com
Thu Sep 9 08:38:21 EDT 2010
> In functions
> do_write_buffer @ drivers/mtd/chips/cfi_cmdset_0002.c.
> /* why word_write_time? */
I assume this is because the write times as given by CFI are typical times and
is most cases the device is faster than that. In other words, if we waited
"buffer_write_time" before starting to poll then the device would already have
finished the operation and we would waste time in most cases.
Actually, newer devices would work without any delay after sending the command
cycles and before polling. However, first generation MirrorBit devices (-A and
-M families) required a 4us delay to give stable status information. So
waiting the typical word program time is a good compromise. It gives you
maximum performance while still keeping compatiblility with older devices.
--Gernot
More information about the linux-mtd
mailing list