[U-Boot-Users] Unable to write to flash..
vijay.seshan at wipro.com
Sun Sep 16 14:19:11 CEST 2007
We've been having a strange problem during our board bringup. I have given a
brief description about our board, the problem we are facing and
investigation done so far. Would appreciate any comments/pointers for
I apologize in advance for the long post that follows..:-)
This is a MPC8360E based board with a S29GL01GP12T (16 bit) flash
(size=128MB) and 256 MB DDRRam + other peripherals. We have a BDI2000 JTAG
debugger connected to the board. Relevant sections of our BDI config file
are given below,
; init core register
WREG MSR 0x00001002 ;MSR : ME,RI
; Move MBAR to 0xe0000000
WM32 0xff400000 0xe0000000 ;MBAR to 0xe0000000
; Initialize LAWBAR's
WM32 0xe0000020 0xf8000000 ;LBLAWBAR0 : Flash
WM32 0xe0000024 0x8000001a ;LBLAWAR0 : *
WM32 0xe00000A0 0x00000000 ;DDRLAWBAR0: DDR Main SODIMM
WM32 0xe00000A4 0x8000001b ;DDRLAWAR0 : 256M
WM32 0xe0005000 0xf8001001 ;BR0 : Flash
WM32 0xe0005004 0xf80069f7 ;OR0 : Flash 32M
BOOTADDR 0xfff00100 ;boot address used for start-up
RCW 0x84600000 0x04030006 ;override reset configuration words
CHIPTYPE MIRRORX16 ;Flash type: Spansion S29GL01GP
CHIPSIZE 0x08000000 ;The size of one flash chip in bytes
BUSWIDTH 16 ;The width of the flash memory bus in bits (8 | 16 |
32 | 64)
;WORKSPACE 0x00200000 ;workspace in DDR RAM
With this the processor halts at 0xFFF00100 on reset. We are able to read
the system configuration registers at the relocated IMMR address and able to
access the DDR Ram (starting at 0x00000000) and Flash starting at
(0xF8000000). The flash contains some data that was pre-programmed (First
sector contains HRCW and a U-boot image is also burned at another location).
We are able to read the contents of the flash, but unable to erase or
program it (we have tried several combinations of sectors). We can confirm
the read because of the pre-programmed content (HRCW + U-boot image).
Is it possible to isolate this to a HW/SW(config file) issue??
Investigation done so far:
We have done the following so far,
1. We have probed the address and data lines along with other control
signals (Chip select etc..). Also we have made sure that the write protect
remains high for the flash. All the address lines are toggling and data
lines seem to be ok (since we are able to read stuff ok from the flash).
Also chip select is getting issued properly at the correct time. (All these,
as per our hw guys).
2. We have tried mapping the flash at different addresses with the same
3. We used the same flash on a Freescale MDS reference board (with the same
configuration for Flash) and are able to read and write successfully. Also
the U-boot image burned in the flash comes up.
4. We tried using the protocol defined in the datasheet to read the
'manufacturer id' using BDI MM/MD commands. But this seems to fail in both
our board and the MDS board.
View this message in context: http://www.nabble.com/Unable-to-write-to-flash..-tf4451149.html#a12699172
Sent from the Uboot - Users mailing list archive at Nabble.com.
More information about the U-Boot