Hi

Yesterday I had a very brief chance to work with Samsung S3C2410A chip and OpenOCD using a FT2232 based JTAG. There seems to be a serious problem with some part of the S3C24xx code as in the beginning I was totally unable to do any NAND Flash related stuff - doing "nand probe 0" I always returned "unknown NAND flash device found, manufacturer id: 0x00 device id: 0x00" (sometimes 0xff instead of 0x00, but that was pretty rare). After some low-level investigation (I've tried to manually probe the NAND Flash using direct memory access to control registers in the chip) I've found out that the 8- and 16-bit wide reads always fail...
The address of the NFDATA register in S3C2410A is 0x4E00000C
"mdb 0x4E00000C 1" always returns 0
"mdh 0x4E00000C 1" always returns 0
"mdw 0x4E00000C 1" returns correct value
The same is true for any peripheral register of the Flash memory controller in this chip (unfortunately I had no time to do more tests in different areas). This is the reason for "nand probe 0" failure (it uses target_read_u8()). I've done a quick&dirty workaround by replacing all uint8_t and uint16_t reads and writes with uint32_t read and writes in src/flash/nand/s3c2410.c and src/flash/nand/s3c24xx.c (I can send a patch, but that's nothing special and I don't think of it as a good solution...). This way NAND Flash access was possible.

Unfortunately I don't have the chip now (the contact was very brief) so I couldn't look for a better solution. I can try to borrow a Mini2440 board, which will probably have a similar problem to try something else if anyone has an idea and there is noone to test it.

This was problem nr.1

There were two more:
2. I couldn't reset this chip to a halted state ("timed-out waiting for...") - separate resets were connected, but I do not know the details of the hardware, so this can be unrelated to OpenOCD. 3. "nand dump..." was extremely slow (jtag khz 6000, chip running at unknown clock, but probably pretty high) - download speed was ~0.1kB/s, dumping 64kB took about 10min. at the same time (same setup, same hardware etc) dumping an image from standard memory was very fast (at least 100x faster).

This is a very brief and incomplete report, but you have to excuse me - the contact with S3C2410A was really short... This way you know that something with S3C2410A is seriously broken...

4\/3!!
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to