[U-Boot] CFI driver and P33 64M flash

Wolfgang Denk wd at denx.de
Thu Sep 25 17:52:28 CEST 2008


Dear Stefan Roese,

In message <200809251653.30832.sr at denx.de> you wrote:
>
> This will not work. Take a look at the lwmon5 configuration. It has a similar 
> Intel FLASH which has two chips inside:
> 
> #define CFG_FLASH0              0xFC000000
> #define CFG_FLASH1              0xF8000000
> #define CFG_FLASH_BANKS_LIST    { CFG_FLASH1, CFG_FLASH0 }
> 
> #define CFG_MAX_FLASH_BANKS     2
> 
> ...
> 
> You need to change the addresses for your 32MB version though.

Please note that I really dislike such static configurations which
will break as soon as the size of the flash banks changes.

Right from the begining U-Boot  was  always  designed  to  allow  for
dynamic  adjustment  to  the actual memory sizes found on the boards,
and we should just use this capability.

Assuming a 32 bit configuration, above should rather be written as:

#define CFG_FLASH0	(0 - flash_info[0].size)
#define CFG_FLASH1	(CFG_FLASH0 - flash_info[1].size)
#define CFG_FLASH_BANKS_LIST    { CFG_FLASH1, CFG_FLASH0 }
...

This may require a preliminary mapping of the  flash  banks  that  is
then  fixed  after  the  CFI driver determined the real size; see for
example how this was done for the  TQM8xx*  boards  (of  course  this
needs to be adapted for 4xx, but you get the idea).

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"We don't care.  We don't have to.  We're the Phone Company."


More information about the U-Boot mailing list