Flash device IDs

David Woodhouse dwmw2 at infradead.org
Tue Apr 23 10:24:46 EDT 2002

Andries.Brouwer at cwi.nl said:
>  It is worse. The commands are SCSI-like, but vendor-unique. So one
> has to discover the commands and the details of the media format. I
> wrote an ECC routine, and do something more or less random for the
> connection between logical and physical blocks. If you have ECC and
> LBA/PBA handling, then there is more to merge.

>From a brief perusal of the code, it looks like the commands map to basic 
operations on NAND flash - read/write/erase commands?

> [Things are not quite straightforward. I think the media uses 512+16
> byte sectors, but my SCSI commands must use 512+64 byte sectors.][Of
> course 512 and 16 are variables. Don't know about 64.] 

That definitely sounds like you're dealing with raw NAND flash chips - 
512 bytes with 16 bytes of 'spare' area - albeit through a _very_ 
strange interface.

If we have to write code to handle the actual SmartMedia translation layer,
which does translation of logical addresses to physical addresses for reads
and handles safely writing the data to a new address before updating the
metadata and possibly erasing old versions of the replaced logical sector,
etc, then we should make sure it works with both the USB readers and the 
raw flash chips.


More information about the linux-mtd mailing list