For a device with a JTAG route controller, enabling or disabling a tap involves some set of operations to be done on the route controller tap. Currently, jtag tapenable and jtag tapdisable only change OpenOCD's internal state. The attached patch adds jtag tap event hooks. Using the new 'jtag configure' subcommand, a TCL method can be attached to the tapenable and tapdisable subcommands. The methods are run before OpenOCD's internal state is updated. This should allow a target script for chips such as the OMAP3530 to setup appropriate actions on the route controller when a user requests the tap to be enabled/disabled.

I suspect that there needs to be some work to handle SRST correctly. I believe we will need to store the initial state provided at tap creation so that it can be reset at SRST assert. Right now if you setup correct methods for tapenable and tapdisable and specified the correct initial tap states, it should work, but if SRST is asserted, the tap states in the target will have reset but the tap states in OpenOCD will not have changed and suddenly you will start getting JTAG chain errors. We may need to provide a way to have a TCL method that is called to discover the tap state.

Comments?

Attachment: openocd-jtag-events.patch
Description: Binary data


--
Rick Altherr
[EMAIL PROTECTED]

"He said he hadn't had a byte in three days. I had a short, so I split it with him."
 -- Unsigned



Attachment: smime.p7s
Description: S/MIME cryptographic signature

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

Reply via email to