Hi folks,

I have a D-Link DNS323, which has an 8MB Spansion flash chip in it.

The CPU is a Marvell Orion5x (Feroceon) MV88F5182 (CPUTAPID 0x07926041,
which is not in the existing sources, FWIW).

I can identify the CPU fine, but am unable to identify the flash part. I
suspect that part of the problem is that the flash part is a 16-bit
device on an 8-bit bus, and consequently probe addresses and read
addresses need to be doubled.

The thread starting here:

http://lists.denx.de/pipermail/u-boot/2010-July/073885.html

details some of the things attempted to get it to work with U-Boot, with
a hacky solution shown here:

http://www.mail-archive.com/u-boot@lists.denx.de/msg49320.html

I have seen that the OpenOCD CFI cfi driver also has code to double the
address (using cfi_info->x16_as_x8 as a flag), but I think the initial
probe does not know to set that flag, and even hard coding it to 1
doesn't work.

The main oddity seems to be that to enter CFI command mode, the
following commands work:

mw.w 0xff8000aa 9800 (rather than 9898 which the U-Boot code defaulted to)

or

mw.b 0xff8000aa 98 (also worked fine to enter QRY mode)

The results then looked like:

md.b 0xff800020 20
ff800020: 51 51 52 52 59 59 02 02 00 00 40 40 00 00 00 00 QQRRYY....@@....
ff800030: 00 00 00 00 00 00 27 27 36 36 00 00 00 00 04 04 ......''66......

Note: I have bricked my DNS323 (hence my interest in OpenOCD! :-) ) and
cannot regain access to the U-Boot shell to repeat this at the moment.

In OpenOCD, however, neither of those commands result in the chip
entering command mode, surprisingly. And, the existing CFI driver does
not identify the chip.

Does anyone have any suggestions as to how I can regain access to the
flash on this device?

Many thanks!

Rogan
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to