Message ID | 1242155174-2513-1-git-send-email-wd@denx.de (mailing list archive) |
---|---|
State | Accepted, archived |
Commit | c7a7a5b9a27e28ce5f800ead9091ce68d37e8088 |
Delegated to: | Kumar Gala |
Headers | show |
On Wed, May 13, 2009 at 3:06 AM, Wolfgang Denk <wd@denx.de> wrote: > The current device tree for the MPC8272ADS assumes a mapping of 32 MB > of NOR flash at 0xFE00.0000, while there are actually only 8 MB on > the boards, mapped at 0xFF80.0000. When booting an uImage with such a > device tree, the kernel crashes because 0xFE00.0000 is not mapped. > > Also introduce aliases for serial[01] and ethernet[01]. > > Signed-off-by: Wolfgang Denk <wd@denx.de> > Cc: Scott Wood <scottwood@freescale.com> > cc: Kumar Gala <galak@kernel.crashing.org> > --- > I am not really sure what the typical flash size on MPC8272ADS boards > is. The board I used for testing is marked as "Prototype", so it may > not be the release configuration. On the other hand, the manual also > says 8 MB, Vitaly Borduk confirms 8 MB on his board, too, and Scott > Wood eventually tested only with cuImage which fixes up the localbus > mappings, thus eventually concealing the issue. The latest reference board I got also has an 8MB SIMM flash module shipped in the box. > > I'm posting this as reference in case the 8 MB should turn out to be > correct. -- wd Although 8MB seems to be the common size used. It can be very easy changed as a pluggable module. It might be better to make the code working for any reasonable flash sizes. - Leo
Dear Li Yang, In message <2a27d3730905130328m27743852w2d68a62ebc32ce31@mail.gmail.com> you wrote: > > Although 8MB seems to be the common size used. It can be very easy > changed as a pluggable module. It might be better to make the code > working for any reasonable flash sizes. You either have to provide a correct device tree for your board, or use a boot loader / boot wrapper that fixes the flash base address and size. At the moment, U-Boot does not contain any code yet to do that (patches welcome :-), and as far as I understand the cuImage wrapper works just the other way round: it adjusts the mappings to the settings in the device tree, which may or may not match the actual hardware. This may work, but at least gives you a different flash memory map in Linux than what you had before in U-Boot, so it's not really nice either. Hm... it seems the majority of MPC8272ADS boards seems to come indeed with 8 MB NOR flash, so I wonder if the patch should actually go in? Best regards, Wolfgang Denk
On May 13, 2009, at 2:42 PM, Wolfgang Denk wrote: > Dear Li Yang, > > In message <2a27d3730905130328m27743852w2d68a62ebc32ce31@mail.gmail.com > > you wrote: >> >> Although 8MB seems to be the common size used. It can be very easy >> changed as a pluggable module. It might be better to make the code >> working for any reasonable flash sizes. > > You either have to provide a correct device tree for your board, or > use a boot loader / boot wrapper that fixes the flash base address and > size. > > At the moment, U-Boot does not contain any code yet to do that > (patches welcome :-), and as far as I understand the cuImage wrapper > works just the other way round: it adjusts the mappings to the > settings in the device tree, which may or may not match the actual > hardware. This may work, but at least gives you a different flash > memory map in Linux than what you had before in U-Boot, so it's not > really nice either. > > > Hm... it seems the majority of MPC8272ADS boards seems to come indeed > with 8 MB NOR flash, so I wonder if the patch should actually go in? > > Best regards, > > Wolfgang Denk Scott, any feedback if our boards have 8M or 32M flash modules? - k
Kumar Gala wrote:
> Scott, any feedback if our boards have 8M or 32M flash modules?
According to the manual, it comes with 8 but can be expanded to 32. I
don't think we swapped out the flash SIMM that came with the board.
As I wrote earlier in the thread, I don't see any way a current u-boot
would enable more than 8MiB of flash on this board anyway. I'd go ahead
and apply the patch.
-Scott
On May 12, 2009, at 2:06 PM, Wolfgang Denk wrote: > The current device tree for the MPC8272ADS assumes a mapping of 32 MB > of NOR flash at 0xFE00.0000, while there are actually only 8 MB on > the boards, mapped at 0xFF80.0000. When booting an uImage with such a > device tree, the kernel crashes because 0xFE00.0000 is not mapped. > > Also introduce aliases for serial[01] and ethernet[01]. > > Signed-off-by: Wolfgang Denk <wd@denx.de> > Cc: Scott Wood <scottwood@freescale.com> > cc: Kumar Gala <galak@kernel.crashing.org> > --- > I am not really sure what the typical flash size on MPC8272ADS boards > is. The board I used for testing is marked as "Prototype", so it may > not be the release configuration. On the other hand, the manual also > says 8 MB, Vitaly Borduk confirms 8 MB on his board, too, and Scott > Wood eventually tested only with cuImage which fixes up the localbus > mappings, thus eventually concealing the issue. > > I'm posting this as reference in case the 8 MB should turn out to be > correct. -- wd > > arch/powerpc/boot/dts/mpc8272ads.dts | 19 +++++++++++++------ > 1 files changed, 13 insertions(+), 6 deletions(-) applied to next. - k
diff --git a/arch/powerpc/boot/dts/mpc8272ads.dts b/arch/powerpc/boot/dts/mpc8272ads.dts index 2a1929a..60f3327 100644 --- a/arch/powerpc/boot/dts/mpc8272ads.dts +++ b/arch/powerpc/boot/dts/mpc8272ads.dts @@ -17,6 +17,13 @@ #address-cells = <1>; #size-cells = <1>; + aliases { + ethernet0 = ð0; + ethernet1 = ð1; + serial0 = &scc1; + serial1 = &scc4; + }; + cpus { #address-cells = <1>; #size-cells = <0>; @@ -46,13 +53,13 @@ #size-cells = <1>; reg = <0xf0010100 0x40>; - ranges = <0x0 0x0 0xfe000000 0x2000000 + ranges = <0x0 0x0 0xff800000 0x00800000 0x1 0x0 0xf4500000 0x8000 0x3 0x0 0xf8200000 0x8000>; flash@0,0 { compatible = "jedec-flash"; - reg = <0x0 0x0 0x2000000>; + reg = <0x0 0x0 0x00800000>; bank-width = <4>; device-width = <1>; }; @@ -144,7 +151,7 @@ reg = <0x119f0 0x10 0x115f0 0x10>; }; - serial@11a00 { + scc1: serial@11a00 { device_type = "serial"; compatible = "fsl,mpc8272-scc-uart", "fsl,cpm2-scc-uart"; @@ -155,7 +162,7 @@ fsl,cpm-command = <0x800000>; }; - serial@11a60 { + scc4: serial@11a60 { device_type = "serial"; compatible = "fsl,mpc8272-scc-uart", "fsl,cpm2-scc-uart"; @@ -192,7 +199,7 @@ }; }; - ethernet@11300 { + eth0: ethernet@11300 { device_type = "network"; compatible = "fsl,mpc8272-fcc-enet", "fsl,cpm2-fcc-enet"; @@ -205,7 +212,7 @@ fsl,cpm-command = <0x12000300>; }; - ethernet@11320 { + eth1: ethernet@11320 { device_type = "network"; compatible = "fsl,mpc8272-fcc-enet", "fsl,cpm2-fcc-enet";
The current device tree for the MPC8272ADS assumes a mapping of 32 MB of NOR flash at 0xFE00.0000, while there are actually only 8 MB on the boards, mapped at 0xFF80.0000. When booting an uImage with such a device tree, the kernel crashes because 0xFE00.0000 is not mapped. Also introduce aliases for serial[01] and ethernet[01]. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Scott Wood <scottwood@freescale.com> cc: Kumar Gala <galak@kernel.crashing.org> --- I am not really sure what the typical flash size on MPC8272ADS boards is. The board I used for testing is marked as "Prototype", so it may not be the release configuration. On the other hand, the manual also says 8 MB, Vitaly Borduk confirms 8 MB on his board, too, and Scott Wood eventually tested only with cuImage which fixes up the localbus mappings, thus eventually concealing the issue. I'm posting this as reference in case the 8 MB should turn out to be correct. -- wd arch/powerpc/boot/dts/mpc8272ads.dts | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-)