[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mtdblock interface





On Thu, 29 Jun 2000, David Woodhouse wrote:

> 
> nico@xxxxxxx.org said:
> >  I was thinking about the MTD block interface of course.  That's the
> > only method to use conventional filesystems with. 
> 
> The only time the mtdblock interface is useful is when the underlying 
> memory device is RAM. AFAIK Linux doesn't allow you to register a block 
> device with a blocksize as large as the erase blocks of most flash chips we 
> use.
> 
> So it's not really likely to be used that often, and especially not with 
> partitioning. 

For those who are interested:

The SA1100 patches I maintain at
ftp://ftp.arm.linux.org.uk/pub/linux/arm/people/nico/ contains a block
driver for Intel flash parts i.e. Strataflash and friends. Since the erase
block size is at least 64k, the driver implements a local cache to allow
the use of small block with the kernel block device interface for write
access.

This driver is currently in use by many embedded projects so it has a
rough idea of different flash configurations, addressing methods and
partitions. This was developed in order to use generic filesystems like
ext2, cramfs, etc.  Of course, jffs could be a much better choice for
Flash storage, but it wasn't available at the time and read-only
filesystems like cramfs still require a block device.

The major item on the wish list is to port this driver (at least the
low-level flash access) into the MTD framework, but nobody currently using
it found the time to do so yet.  I wanted to mention it here just in case
someone else might be interested to look at it.


Nicolas