ARM Technical Support Knowledge Articles

Why does RVD fail to program the first 256KB of NOR flash correctly on my PB926?

Applies to: PB926, RealView Development Suite (RVDS)

Answer

Certain PB926 boards were shipped with different flash parts than are catered for by RVD's built-in flash programming utility.

New BCD and FME (Flash MEthod) files for these PB926 boards are contained in the attached zip, allowing successful flash programming from RVD.

If you see 64KB areas in the first 256KB of NOR flash (0x34000000) being left as 0xffffffff (erased) after writing within the first 256KB, then this FAQ may fix that issue.

You should only use these new files if you have flash part 28F256K3C.  You will be able to see '256K3C' on components U4 and U5 if you have this part.  See the photos below to locate this part.

PB926 highlighting 256K3C

Zoom in on 256K3C flash chip

The files accompanying this FAQ will add a new 'BoardChip name' to RVD - 'VPB926EJ-S_K3C'.  The original BoardChip name, 'VPB926EJ-S' will still exist, allowing you to work with boards with both types of flash.

To install:
 - copy the file in the etc folder to <installation path>RVDCore<version><build><platform>etc (e.g. C:Program FilesARMRVDCore3.11003win_32-pentiumetc)

 - copy the files in the VersatilePB926EJ-S folder to <installation path>RVDFlash<version><build><platform>VersatilePB926EJ-S (e.g. C:Program FilesARMRVDFlash3.14windowsVersatilePB926EJ-S)

As well as the required FME (Flash MEthod) file for flash programming, this zip includes updated sources and a makefile so that you can build the fme yourself if you prefer (or if you want to modify the fme).

Full instructions are contained in Readme.txt within the attached zip.

Further Information

The existing FME (Flash MEthod) file expects a flash chip that has 4 64KB parameter blocks at the beginning of its address range, followed by 255 256KB main blocks.  The 28F256K3C part has 256 256KB main blocks with no parameter blocks.  Programming within the first 256KB of the 28F256K3C part with the original FME file results in all 64KB sections of the 256KB other than the last section to be erased.  e.g. writing to the entire first 192KB will result in the first 128KB and the last (4th) 64KB being left as 0xffffffff, with the 3rd 64KB being written correctly.

Attachments: img19628.jpg , pb926_fme_and_bcd_for_256k3c.zip , img19627.jpg

Article last edited on: 2009-01-20 17:31:32

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential