cfi_probe geometry problem
I am having difficulty getting cfi_probe working for the flash in my
board.
I am trying to complete a map driver for Spansion S29GL512N NOR
flash in Pico cards.
The flash shared between two CPU's so a mapping driver is required
to enable and disable it.
I have most of the driver code working and after setting up data
structures in probe I can issue a QRY as
d.x[0] = 0xf0;
(map->write) (map, d, 0);
d.x[0] = 0xff;
(map->write) (map, d, 0);
d.x[0] = 0x98;
(map->write) (map, d, 0x55);
pico_flash_copy_from(map, &buf, 0 , 64);
if(buf[0x20] != 'Q' && buf[0x22] != 'R' && buf[0x24] != 'Y')
DBG("Flash Error QRY failed\n");
else
DBG("Flash QRY %d\n");
However cfi_probe fails. this seems to be some type of geometryissue. When I watch CFI probe it either sends the query request to the wrong addresses, or it checks the wrong addresses for the results.
A clue would be appreciated.
Signature · 8 lines
Dave Lynch DLA Systems Software Development: Embedded Linux 717.627.3770 [email protected] http://www.dlasys.net fax: 1.253.369.9244 Cell: 1.717.587.7774 Over 25 years' experience in platforms, languages, and technologies too numerous to list. "Any intelligent fool can make things bigger and more complex... It takes a touch of genius - and a lot of courage to move in the opposite direction." Albert Einstein