[U-Boot] Handling dual die and single die flash on same board

Stefan Roese sr at denx.de
Tue Sep 7 19:26:04 CEST 2010


Hi Chris,

On Tuesday 07 September 2010 19:05:46 Chris Packham wrote:
> I've run into a situation with a new design and I could use some pointers.
> 
> Our hardware designers have built prototypes with different flash
> configurations. One possible configuration is a dual die 2x32MB the
> other is a single die 1x64MB.
> 
> My u-boot config is currently setup for the 2x32MB case i.e.
> CONFIG_SYS_MAX_FLASH_BANKS = 2, CONFIG_SYS_FLASH_BANKS_LIST = {base,
> base+32MB}. The problem with this is that when flash_get_size is called
> on the 1x64 chip it discovers the same chip the 2nd time around and
> promptly walks off the end of the memory area I have allocated for it.
> 
> Is there any existing way to make the cfi_flash driver handle this
> situation for me?

I just recently sent a patchset for the CFI driver that could help to handle 
such a situation. Here the most interesting patch:

http://www.mail-archive.com/u-boot@lists.denx.de/msg37234.html

I would suggest to set CONFIG_SYS_MAX_FLASH_BANKS_DETECT to 2 and then add 
some board specific code to determine the real bank count and set 
cfi_flash_num_flash_banks accordingly.

Hope this helps.

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