[U-Boot] Non standard CFI detection tweaks

Stefan Roese sr at denx.de
Tue Jul 20 09:58:33 CEST 2010


Hi Rogan,

On Monday 19 July 2010 16:37:08 Rogan Dawes wrote:
> On 2010/07/19 3:33 PM, Stefan Roese wrote:
> > Not really. I find it odd, that writing 0x9800 works and 0x0098 doesn't.
> > Perhaps the chip is connected in byte-mode after all? Not sure.
> > 
> > Do you know if and how the Linux MTD driver handles the NOR FLASH?
> > 
> > Cheers,
> > Stefan
> 
> Here is the setup code from the Linux kernel:
>  >http://lxr.free-electrons.com/source/arch/arm/mach-orion5x/dns323-setup.c
>  >#L93>
> 
> Which is used by:
> 
> <http://lxr.free-electrons.com/source/arch/arm/mach-orion5x/dns323-setup.c#
> L435>
> 
> I don't know enough about the kernel to understand where it goes to from
> there.

OK, so the width is definitely 8 bit and not 16 bit:

static struct physmap_flash_data dns323_nor_flash_data = {
	.width		= 1,
...

But the base address is listed here as 0xf4000000:

#define DNS323_NOR_BOOT_BASE 0xf4000000

Are you sure you got this right? Nevertheless, now we know for sure, that the 
NOR chip is connected as an 8bit device and the chip is operated in byte mode. 
So all tests from the U-Boot prompt should be done with ".b" extension.


BTW: This code you referenced is also available in mainline kernel.org.

Cheers,
Stefan

--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de


More information about the U-Boot mailing list