Hi Flemming,

--- Flemming Futtrup <[email protected]> schrieb am Mi, 30.12.2009:

> I have run into trouble with a new board holding the SST
> 39VF6401B external flash. 
> 
>  


> TAP: lpc2468.cpu (enabled)
> 

Make sure the buffering is disabled in EMCStaticConfig0 of the LPC2468 (board 
config file?).
If enabled, the target algorithm cannot detect the end of the program cycle, 
and will wait in an endless loop until a timeout occurs.


> At this point I assumed that the concerned Flash device is
> a NON_CFI device.
> 

The reason to declare this device as NON-CFI is that it doesn't work with the 
DQ5 polling mode. This mode is standard for CFI devices in cfi.c. Probably it 
would be cleaner to define a new fixup function in cfi.c, but the approach with 
non_cfi.c should work fine for your device. 

> First of all there was no support for this flash in the
> non_cfi.c so I added this: 
> 
> { 
>   .mfr = CFI_MFR_SST, 
>   .id = 0x236d, 
>   /* SST39VF6401B */ 
>   .pri_id = 0x02, 
>   .dev_size = 8*MB, 
>   .interface_desc = 0x2, /* x8 or x16 device
> with  BYTE */ 
>   .max_buf_write_size = 0x0, 
>   .status_poll_mask = CFI_STATUS_POLL_MASK_DQ6_DQ7, 
>   .num_erase_regions = 1, 
>   .erase_region_info = 
>   { 
>     ERASE_REGION(2048, 4*KB) 
>   } 
> },
> 

That's ok.


> Then I added this line to the cfi.c cfi_0002_fixups array:
> 
> {CFI_MFR_SST, 0x236d, cfi_fixup_0002_unlock_addresses,
> &cfi_unlock_addresses[CFI_UNLOCK_555_2AA]},
> 

Looks ok, but probably this is already the default, so your fixup won't change 
anything.


If the buffer bit is not the problem, it will help to see the debug output 
('-d' switch).

Regards,
Rolf



__________________________________________________
Do You Yahoo!?
Sie sind Spam leid? Yahoo! Mail verfügt über einen herausragenden Schutz gegen 
Massenmails. 
http://mail.yahoo.com 
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to