[U-Boot] M29W256GL + WEIM in uboot

Marek Vasut marek.vasut at gmail.com
Mon Feb 13 21:52:32 CET 2012


> Hello, Im new to all of this, but I 've  been reading most of the post
> related to the M29w256 numonyx and the u-boot documentation without
> any success :(
> 
> Im booting from MMC card and I want to parallel nor to be probed by
> cfi, but I have not succeeded since the uboot code freezes when at the
> beginning of the first "flash_cmd_write" in cfi_flash.c
> 
>        /* Issue FLASH reset command */
>         flash_cmd_reset(info);
> 
> The CS0_BASE_ADDR  has an start address matching  #define
> WEIM_ARB_BASE_ADDR              0x08000000     , however the range of
> the WEIM interface register settings are between 021B_8000 --
> 021B_8098.
> 
> Many board files has the WEIM CS0 as the start of the registers and I
> think this is why the NOR configuration is a matter of config settings
> like the ones below.
> 
> #define CONFIG_SYS_FLASH_BASE           CS0_BASE_ADDR
> #define CONFIG_SYS_MAX_FLASH_BANKS 1
> #define CONFIG_SYS_MAX_FLASH_SECT 256
> #define CONFIG_SYS_FLASH_CFI_WIDTH      FLASH_CFI_16BIT
> #define CONFIG_SYS_FLASH_CFI_AMD_RESET 1
> 
> /* Monitor at beginning of flash */
> #define CONFIG_SYS_MONITOR_BASE         CONFIG_SYS_FLASH_BASE
> #define CONFIG_SYS_MONITOR_LEN          0x40000         /* Reserve 256KiB
> */
> 
> #define CONFIG_ENV_SECT_SIZE   0x20000
> #define CONFIG_ENV_SIZE         CONFIG_ENV_SECT_SIZE
> #define CONFIG_ENV_ADDR         (CONFIG_SYS_FLASH_BASE + 0x40000)
> 
> /* Address and size of Redundant Environment Sector     */
> #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET +
> CONFIG_ENV_SIZE) #define CONFIG_ENV_SIZE_REDUND  CONFIG_ENV_SIZE
> 
> 
> If you could give me some help so that at least I could send write
> commands to the chip without hang pls...
> 

You're pointing CFI to configuration registers, you need to point it to where 
the NOR flash is MMAPed. If it's not MMAPed, this isn't your driver.
M


More information about the U-Boot mailing list