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