map and chip drivers

Ian Campbell ijc at hellion.org.uk
Fri May 20 05:35:04 EDT 2005


On Fri, 2005-05-20 at 17:17 +0800, Munira Ahmed wrote:
> > Breaking things down a little more, in the mtd stack there are 3 kinds of drivers.
> > map drivers that describe how to talk to a given flash chip.
> > probe drivers that identify what kind of chip you have.
> > chip drivers that know how to speak a command set and let you flash your chip.
> 
> 
> I really don't understand the difference between the map and the chip
> driver? 
> 
> talk to a given flash !
> speak a command set!
> 
> ain't they the same?

The map driver takes care of physically accessing the flash, while the
chip driver knows what to do with each type of flash. So the map driver
provides the method for the chip driver to actually access the flash.

For example we have boards at work which have flash chips mapped at
various physical addresses (differing between boards), some devices have
paged flash, with an i/o register to select the page and a physical
address where the current page is mapped. I'm sure there are other ways
of arranging things.

The board-specific map drivers takes care of all these differences,
while the chip driver is shared between multiple boards because the
underlying chips are the same in each case.

Ian.
-- 
Ian Campbell
Current Noise: Slayer - Fictional Reality

BOFH excuse #13:

we're waiting for [the phone company] to fix that line





More information about the linux-mtd mailing list