[U-Boot] [PATCH v3] ppc4xx/fdt/flash: Change fdt_fixup_nor_flash_node() to not rely on cs size

Detlev Zundel dzu at denx.de
Wed Sep 22 17:37:36 CEST 2010


Hi Stefan,

> This patch changes the behaviour of the fdt_fixup_nor_flash_node()
> function. Now it doesn't patch the size of the "reg" property with the
> chip-select size, but with the size returned from the new function
> flash_get_bank_size(). This function will return per weak default the
> flash size of the bank (bank = chip-select numer) detected by the flash
> driver. If this does not fit your needs, this function may be overridden
> by a board specific one.
>
> For this the parameters needed to be changed. So I intentionally squashed
> the PPC4xx stuff using this routine into this patch. Otherwise it would
> not be git-bisectable anymore.
>
> The board specific function for the AMCC/APM Ebony eval board is now
> included in this patch version.
>
> Signed-off-by: Stefan Roese <sr at denx.de>
> Cc: Gerald Van Baren <vanbaren at cideas.com>
> Cc: Wolfgang Denk <wd at denx.de>
>
> ppc4xx: Add board specific function to return the detected flash size
>
> This function will be called to fixup size of the "reg" property of the
> NOR flash device tree nodes. Ebony can't use the weak default, since
> it has a special chip-select to bank-number binding.

I just tested top of tree of the ppc4xx repo with Linux-2.6.36-rc3 and
it does not boot:

## Booting kernel from Legacy Image at 00400000 ...
   Image Name:   Linux-2.6.36-rc3
   Created:      2010-09-14   9:34:20 UTC
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    1660276 Bytes = 1.6 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 00800000
   Booting using the fdt blob at 0x800000
   Uncompressing Kernel Image ... OK
¡¬Ëk½±[ttyS0] enabled, bootconsole disabled
console [ttyS0] enabled, bootconsole disabled
serial8250.0: ttyS1 at MMIO 0x140000300 (irq = 17) is a U6_16550A
140000200.serial: ttyS0 at MMIO 0x140000200 (irq = 16) is a 16550
140000300.serial: ttyS1 at MMIO 0x140000300 (irq = 17) is a 16550
brd: module loaded
Found: AMD AM29F040
1fff80000.small-flash: Found 1 x8 devices at 0x0 in 8-bit bank
Data machine check in kernel mode.
Oops: Machine check, sig: 7 [#1]
Ebony
last sysfs file: 
Modules linked in:
NIP: c01a5f50 LR: c01a6200 CTR: c01a60fc
REGS: c7ffbf10 TRAP: 0202   Not tainted  (2.6.36-rc3)
MSR: 00029000 <EE,ME,CE>  CR: 48e44f22  XER: 00000000
TASK = c7824000[1] 'swapper' THREAD: c7828000
GPR00: 000000aa c7829d20 c7824000 00080000 c799b318 c7829d68 00000555 00000555 
GPR08: 00000001 d1100000 00000001 00080555 48e44f22 00000000 c02683e8 c02dfa80 
GPR16: c02dfa8c c02e099c c02e0960 c02e08e8 c02683dc c02e004c c026716c c0267124 
GPR24: c7829d68 c7ffed58 c79987e0 00000000 00080000 c799b318 00000001 c7829d68 
NIP [c01a5f50] jedec_reset+0x234/0x3b4

What am I doing wrong?

Thanks
  Detlev

-- 
Cyberwar is certainly not a myth. But you haven't seen it yet, despite
the attacks on Estonia. Cyberwar is warfare in cyberspace. And warfare
involves massive death and destruction. When you see it, you'll know it.
                           -- Bruce Schneier, Nov. 2007
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de


More information about the U-Boot mailing list