Hi, Add SWJ_SEQ as command type, with parameters: 1. trn_type, tru_cycles(uint8_t): define Trn: Turnaround. This is a period during which the line is not driven and the state of the line is undefined. The length of the turnaround period is controlled by the TURNROUND field in the Wire Control Register, see The Wire Control Register, WCR (SW-DP only) on page6-18. The default setting is a turnaround period of one clock cycle. There are additional turnaround periods in the asynchronous SWD protocol. 2. retry_num(uint16_t): If WAIT is received, retry retry_num, if still not accessable, then issue SWJ_RETRY_OUT. 3. data(uint32_t*): 32-bit data to send or receive. 4. force_data: if set to 1, data is forced to be sent. In ADIv5: Note If Overrun Detection is enabled then a data phase is required on a FAULT response. For more information see Sticky overrun behavior on page5-12. and: Note If Overrun Detection is enabled then a data phase is required on a WAIT response. For more information see Sticky overrun behavior on page5-12. So if Overrun Detection is enabled, force_data should be set to 1. 5. result(uint8_t): return the result of operation, available values are: SWJ_SUCCESS, SWJ_FAULT, SWJ_NO_RESPONSE, SWJ_RETRY_OUT. SWJ_SUCCESS: everything is OK. SWJ_FAULT: FAULT is received as response to request sent by host. SWJ_NO_RESPONSE: no response is received after request sent. SWJ_RETRY_OUT: issued after retry retry_num if WAIT response is received.
Add SWJ_RESET as command type: Simply shifts out 50 clocks with data = 1. For SWJ_ENABLE, it equals to SWJ_RESET followed by a JTAG_ID read. Any comments or suggestions? Reference Docs: ARM Debug Interface v5.0(ADIv5) -- Best Regards, SimonQian http://www.SimonQian.com <http://www.simonqian.com/>
_______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development