[ECOS] problem with flash_am29xxxxx.inl

miguelon@tiscali.it miguelon@tiscali.it
Fri Sep 1 09:50:00 GMT 2006

I'm working on a TaskIt Portux920T which mount an AMD/Spansion 
S29GL128M Flash memory. I've already obtained the right patch for this 
device (thanks Sato) but it still doesn't work. Therefore I had a look 
at the driver code and I discovered that the device id is not 
recognized because the driver reads from a wrong address.  Actually the 
problem is when the driver calls the FLASH_P2V macro:

f_s1 = FLASH_P2V(ROM+FLASH_Setup_Addr1);

First thing, when I see FLASH_P2V I think about something which change 
the physical address to a virtual address but actually the macro just 
does a double casting. Am I right or I miss something?
Second thing, in my case ROM is a pointer to 0x60000000 (the virtual 
address of the FLASH) and FLASH_Setup_Addr1 is  555 but if I print f_s1 
I obtain 0x60001554. The last bits are shifted by 2 but I need only a 
shift by one because in my case the A0 of the micro is connected to the 
A1 of the flash. I don't have clear how this shift is performed, maybe 
I'm missing something in the FLASH_P2V macro. Can someone help me?


Naviga e telefona senza limiti con Tiscali     
Scopri le promozioni Tiscali adsl: navighi e telefoni senza canone Telecom


Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

More information about the Ecos-discuss mailing list