Skip to contentSkip to conversation

cfi_probe geometry problem

DISCUSSION David H. Lynch Jr. 1 participant 1 message Nov 20, 2008 Memory technology devices (MTD)

lore
Share & tools
lore
#0 lore raw

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 geometry

issue. 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