Re: machine check in kernel for a mpc870 board
From: Shawn Jin <hidden>
Date: 2010-07-02 17:06:50
quoted
=A0 =A0 =A0 =A0localbus@fa200100 { =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0compatible =3D "fsl,mpc885-localbus", "fs=
l,pq1-localbus",
quoted
=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 "simple-bus"; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0#address-cells =3D<2>; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0#size-cells =3D<1>; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0reg =3D<0xfa200100 0x40>; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0ranges =3D< =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A00 0 0xfe000000 0x01000000=
=A0 =A0// I'm not sure about
quoted
this? =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0>; =A0 =A0 =A0 =A0};Change 0xfe000000 to wherever u-boot maps your flash, and 0x01000000 to whatever the size of the flash localbus mapping is. Or more generally update this section to hold whatever is connected to th=
e
localbus on your board. =A0The first cell is the chipselect.
The chipselect? Isn't it just the child-bus-addr? BTW, do we have to define the #address-cells to 2? 1 is not enough? SDRAM uses CS0/6, each 64MB. BDI2000 configuration is as follows. ; init memory controller WM32 0xFA200104 0xfe000ff6 ;;OR0: Flash 32MB WM32 0xFA200100 0xfc000001 ;;BR0: Flash at 0xFC000000, 32bit, R/W, no parity, use GPCM WM32 0xFA20010C 0xfc000e00 ;;OR1: SDRAM 64MB, all accesses WM32 0xFA200108 0x00000081 ;;BR1: SDRAM at 0x00000000, 32bit, R/W, no parity, use UPMA WM32 0xFA200134 0xfc000e00 ;;OR6: SDRAM 64MB, all accesses WM32 0xFA200130 0x04000081 ;;BR6: SDRAM at 0x04000000, 32bit, = R/W, no parity, use UPMA When defining memory's reg property, can a single pair <0 0x08000000> be enough? Or must it be <0 0x04000000 0x04000000 0x04000000>? Thanks, -Shawn.