prevent abort via polling during jtag_reset
Observed: openocd: core.c:318: jtag_checks: Assertion `jtag_trst == 0' failed. The issue was that nothing disabled background polling during calls from the TCL shell to "jtag_reset 1 1". Fix by moving the existing poll-disable mechanism to the JTAG layer where it belongs, and then augmenting it to always pay attention to TRST and SRST. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
This commit is contained in:
@@ -737,4 +737,21 @@ int jtag_get_error(void);
|
||||
*/
|
||||
int jtag_error_clear(void);
|
||||
|
||||
/**
|
||||
* Return true if it's safe for a background polling task to access the
|
||||
* JTAG scan chain. Polling may be explicitly disallowed, and is also
|
||||
* unsafe while nTRST is active or the JTAG clock is gated off.,
|
||||
*/
|
||||
bool is_jtag_poll_safe(void);
|
||||
|
||||
/**
|
||||
* Return flag reporting whether JTAG polling is disallowed.
|
||||
*/
|
||||
bool jtag_poll_get_enabled(void);
|
||||
|
||||
/**
|
||||
* Assign flag reporting whether JTAG polling is disallowed.
|
||||
*/
|
||||
void jtag_poll_set_enabled(bool value);
|
||||
|
||||
#endif /* JTAG_H */
|
||||
|
||||
Reference in New Issue
Block a user