Tom Walsh tom at cyberiansoftware.com
Wed Nov 28 11:35:25 EST 2001

Marcos Lois Bermúdez wrote:
> I want to make a flash utility for flash programming.
> I have make a program that read the image file allocate memory for
> that file, and when i put the mask interrupt to 1, the system hangs.
> I have a Dragonball VZ system with 4M Flashand 8 M ram.
> Are a method of make this more elegant?
> Can i reprogram the flash if the kernel executes from it?
> Need the kernel to be executed form ram?

Most flash memory modules will not allow you to erase/program one sector
while reading data within another sector.  As soon as you start to
command the Flash state machine to erase/program, ALL of the locations
from within the device reflect the contents of the Flash status register
and not your code. These devices are known as single plane devices,
there are *some* dual plane devices on the market.  You would probably
be better off by:

1. Turn off the system interrupts(!) as you DON'T want an interrupt to
vector you to a garbage location.

2. program your flash.

3. Turn interrupts back on.

You must do this from a program that is executing in memory, you cannot
do this (unless you have dual plane Flash) from XIP (eXecute In Place)
within the Flash that is being programmed.


> ------------------------------------------------------------
> Marcos Lois Bermúdez
> Arnal, Tecnologías de la Información
> Julián Estévez, 32 Bajo A
> 36207 Vigo (Spain)
> marcos at arnal.es
> http://www.arnal.es
> ------------------------------------------------------------

Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
This message resent by the uclinux-dev at uclinux.org list server http://www.uClinux.org/

More information about the uClinux-dev mailing list