Hi ! Right now I'm trying to access the memory and CPU SoC registers via JTAG. My documentation says this for memory access:
1. Select the DR Scan path 2. Scan in the 34-bit address of the data to access, and a direction bit (1=read, 0=write). 3. Go to Update-DR and re-enter Select-DR Scan 4. For a read operation, scan out the contents of the addressed area. For a write opera- tion, scan in the new contents of the area. 5. Return to Run-Test/Idle I guess step 5 would be the first: jtag_add_end_state(TAP_IDLE); Then I need to transfer the JTAG opcode (0x11). I noticed that almost all processors define some variant XXXX_set_instr() function. I'll do the same, but eventually provide a patch that get's rid of all this similar functions and add this as a helper to jtag.c/jtag.h. So I'd do: jtag_set_instr(tap, 0x11); Now, I need to push 34 bits down, I'd populate a scan_field_t according and call jtag_add_dr_scan(tap, field, XXX). Should I simply use "TAP_DRUPDATE", as the doc said "Go to Update-DR" ?? And how do I then go to "Select-DR Scan" again? Does this happen implicitly when I add another field with jtag_add_dr_scan() ? _______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development