Subject: Re: Document and implement an improved flash device binding

From: David Gibson <[email-masked]>
Date: Wed, 5 Sep 2007 12:59:07 +1000

On Mon, Sep 03, 2007 at 12:23:34PM +0200, Segher Boessenkool wrote:
> >+   j) CFI or JEDEC memory-mapped NOR flash
> >
> >     Flash chips (Memory Technology Devices) are often used for solid 
> >state
> >     file systems on embedded devices.
> 
> Well, almost everything has a NOR flash on it, not just
> embedded boards ;-)

Well, true.

> >+     - bank-width : Width (in bytes) of the flash bank.  Equal to the
> >+       device width times the number of interleaved chips.
> >+     - device-width : (optional) Width of a single flash chip.  If
> >+       omitted, assumed to be equal to 'bank-width'.
> 
> Let's have bank-width optional instead, it's more natural
> that way for the common case of just one chip.  Or, you can
> say that either is optional.

No, I'm disinclined to do that since bank-width is the primary bit of
information that the driver needs.

> >+	flash@ff000000 {
> >+		compatible = "amd,am29lv128ml", "cfi-flash";
> >+		reg = <ff000000 01000000>;
> >+		bank-width = <4>;
> 
> This is an 8/16-bit part, you need a device-width ;-)

Oops - that comes from grabbing a random flash name, combining it with
other example fragments without checking the details.  Added a
device-width.

> Need #address-cells here for the child nodes:

Oops.  Added #a and #s.

> >+		fs@0 {
> >+			reg = <0 f80000>;
> >+		};
> 
> [big snip]
> 
> >+					OpenBIOS@0 {
> 
> This show immediately why node name = partition name won't
> work out.  You're not supposed to start a node name with a
> capital like this.

According to which?

Nonetheless, I've added a label property, and used it for the ebony
tree.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson