Subject: Re: NAND driver design theory
To: Peter Seebach <>
From: Garrett D'Amore <>
List: tech-kern
Date: 03/08/2006 13:44:47
Peter Seebach wrote:
> What should a NAND flash driver DO?
> I hypothesize that it is probably, for now, good enough to just have it show
> up as a block device, just like a disk.  This lets us leave questions such as
> "what filesystem do we use" up to userland, which is probably the right place
> for them anyway in most cases.
> Looking at the Linux code (which may taint me), they have a generic NAND
> driver that is passed functions to use to perform hardware operations, such
> as enabling writes or reads, and then device-specific glue code to provide
> those functions.  This seems plausible.  In some cases, "device-specific"
> may be machine-specific; for instance, the TAMS 3011 (my target system) uses
> pins on its gpio device, as well as direct memory-mapped registers, to
> communicate with the flash device.
> And, before I get too far into this:
> 1.  Am I right that merely having seen Linux code doesn't "taint" me for
> purposes of copyright?
I believe so.  I look at Linux code all the time. But I never cut and
paste, and I usually try to look for a "better" design (which given the
state of most things in Linux, is usually not that hard. :-)

> 2.  Is anyone else either interested in this, or working on it?
Yes on both counts, though it may be some time before I have cycles to
spare on it.  But I'm more than happy to participate in design/code
reviews if someone else implements stuff before I can get around to it.

    - Garrett
> -s

Garrett D'Amore, Principal Software Engineer
Tadpole Computer / Computing Technologies Division,
General Dynamics C4 Systems
Phone: 951 325-2134  Fax: 951 325-2191