[U-Boot-Users] Flash configuration

Justin Clacherty justin at redfish-group.com
Thu Aug 24 11:49:38 CEST 2006


Hi,

I've ported u-boot to my PXA270 board and have it working as a network 
boot loader.  I'm now trying to get flash programming working so I can 
flash the kernel and root file system.  Our board has two Intel 512Mib 
P30 flashes on it configured as 32-bit memory.  The 512Mib parts are 
actually two 256Mib parts on the same die so u-boot should see two banks 
of 32-bit memory with two flash devices in each bank.

After booting flinfo shows that u-boot has found four devices but the 
addresses seem to be wrong.  It has

bank 1 0x00000000 - 0x03ffffff
bank 2 0x04000000 - 0x07ffffff
bank3 0x00000000 - 0x03ffffff
bank 4 0x00000000 - 0x03ffffff.

Any ideas where I might have gone wrong?  The relevant portions of my 
board header file are below.

Regards,
Justin.

#define PHYS_FLASH_1            0x00000000 /* Flash Bank #1 */
#define PHYS_FLASH_2            0x04000000 /* Flash Bank #2 */

#define CFG_FLASH_CFI
#define CFG_FLASH_CFI_DRIVER    1
#define CFG_FLASH_CFI_WIDTH     FLASH_CFI_32BIT

#define CFG_FLASH_BASE_1        PHYS_FLASH_1
#define CFG_FLASH_BASE_2        PHYS_FLASH_2
#define CFG_FLASH_BANKS_LIST    { CFG_FLASH_BASE_1, CFG_FLASH_BASE_2 }

#define CFG_MONITOR_BASE        0
#define CFG_MONITOR_LEN         0x20000

#define CFG_MAX_FLASH_BANKS     4           /* max number of memory 
banks               */
#define CFG_MAX_FLASH_SECT      (4 + 255)   /* max number of sectors on 
one chip    */

/* timeout values are in ticks */
#define CFG_FLASH_ERASE_TOUT    (25*CFG_HZ) /* Timeout for Flash Erase */
#define CFG_FLASH_WRITE_TOUT    (25*CFG_HZ) /* Timeout for Flash Write */

/* write flash less slowly */
#define CFG_FLASH_USE_BUFFER_WRITE 1

/* Flash environment locations */
#define CFG_ENV_IS_IN_FLASH     1
#define CFG_ENV_ADDR            (CFG_FLASH_BASE_1 + CFG_MONITOR_LEN)    
/* Addr of Environment Sector   */
#define CFG_ENV_SIZE            0x10000 /* Total Size of 
Environment            */
#define CFG_ENV_SECT_SIZE       0x10000 /* Total Size of Environment 
Sector     */






More information about the U-Boot mailing list