JTAG debugging
Jon Abbott (1421) 2651 posts |
What does one require to do both JTAG debugging and flash recovery on the Iyonix? I gather I can use OpenOCD for the software side, but what interface does the Iyonix require? I’m guessing its done through the parallel port? If possible I’d like to use the same JTAG hardware for the Pi. Recommendations on which JTAG device to use would be most helpful. The requirement is to assist with the ARM3 JIT I’m developing, where I need to step debug and look at previous instructions prior to a crash / lockup. |
Jon Abbott (1421) 2651 posts |
I’m still trying to figure out how to do this, either on the Pi or the Iyonix. The Pi would be preferable as my Iyonix is awaiting repairs. I desperately need to be able to backtrace crashes so I find out what instruction is causing the problem. |
Jeffrey Lee (213) 6048 posts |
I’ve got no idea about the Iyonix (I’d assume it would be a header on the motherboard rather than through the parallel port? Especially since there isn’t a parallel port!) For the Pi it looks like you need to use software to configure the expansion header correctly so that the JTAG pins are enabled (see here). I’m not sure how easy it would be to start RISC OS with the method described there (getting the Pi to load armjtag.bin and then using JTAG to load the kernel) – it would probably be a lot easier to modify the HAL (or just run a bit of BASIC on startup) to reconfigure the expansion header and then attach the debugger. That should be fine for your purposes, since you’re only interested in debugging software, not the ROM startup. If you had a BeagleBoard I’d be able to help you get JTAG set up with that, but it might not be much use as I’ve never worked out how to get the embedded trace unit working! |
Jon Abbott (1421) 2651 posts |
Looks like I’m in uncharted territory then. If I do figure it out, I’ll document how, as some folk might find it useful for low level debugging. I’ll have a read of that link and see if it can be done once RISCOS has booted, that would be ideal. I know it’s been done on the Iyonix, as I’ve found mention of it on forums from wayback, haven’t found any details on how though. |