Subject: Re: Re: hi, i have two flashs, but my kernel can only find one , how cani write the dts?

From: "hacklu" <[email-masked]>
Date: Mon, 19 Jul 2010 11:56:31 +0800

thanks very much! it works well now~~
but i found in my system,if i add the 0x prefix it will cause a syntax error 

2010-07-19 

hacklu 

发件人： Grant Likely 
发送时间： 2010-07-17  05:46:59 
收件人： hacklu 
抄送： linuxppc-dev 
主题： Re: hi, i have two flashs, but my kernel can only find one , how cani write the dts? 
 
On Fri, Jul 16, 2010 at 2:34 AM, hacklu <[email-masked]> wrote:
> this is my dts file:
> flash@0,0 {
>                         #address-cells = <1>;
>                         #size-cells = <1>;
>                         compatible = "cfi-flash";
>                         probe-type = "CFI";
>                         reg = <0 0 1000000>;
>                         bank-width = <2>;
>                         device-width = <1>;
>                         hrcw@0 {
>                                 label = "hrcw";
>                                 reg = <0 40000>;
>                         };
>                         jffs@40000 {
>                                 label = "jffs";
>                                 reg = <40000 200000>;
>                         };
>                         jffs2@240000 {
>                                 label = "uimage";
>                                 reg = <240000 d80000>;
>                         };
>              };
> flash@1,0 {
>                         #address-cells = <1>;
>                         #size-cells = <1>;
>                         compatible = "cfi-flash";
>                         probe-type = "CFI";
>                         reg = <1000000 0 1000000>;
This looks wrong.  If you're second flash is on chip select 1 as the
node name suggests, then this should be (first cell is CS#, second is
offset, and third is size.  Alos you're missing the 0x prefix):
reg = <1 0 0x1000000>;
If your second flash is on chip select 0 with the first flash, but
offset by 0x1000000, then reg should be:
reg = <0 0x1000000 0x1000000>;
and the name should be:
flash@0,1000000 { ... };
g.
-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.