X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fsvf%2Fsvf.h;h=76d00b868de25d319bf718ea472b8df1d5aaf8ed;hb=02192f6b8c63d740a551e371441d85d59930e65c;hp=822cad22e94eb303f9ea41e777c43801ee85800d;hpb=c8bc0bb1aee7e7280229a6ec0c104a8fb512782f;p=openocd.git diff --git a/src/svf/svf.h b/src/svf/svf.h index 822cad22e9..76d00b868d 100644 --- a/src/svf/svf.h +++ b/src/svf/svf.h @@ -17,11 +17,33 @@ * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ + #ifndef SVF_H #define SVF_H -#include "command.h" +#include + +int svf_register_commands(struct command_context *cmd_ctx); + +/** + * svf_add_statemove() moves from the current state to @a goal_state. + * + * @param goal_state The final TAP state. + * @return ERROR_OK on success, or an error code on failure. + * + * The current and goal states must satisfy svf_tap_state_is_stable(). + * State transition paths used by this routine are those given in the + * SVF specification for single-argument STATE commands (and also used + * for various other state transitions). + */ +int svf_add_statemove(tap_state_t goal_state); -extern int svf_register_commands(struct command_context_s *cmd_ctx); +/** + * svf_tap_state_is_stable() returns true for stable non-SHIFT states + * + * @param state The TAP state in question + * @return true iff the state is stable and not a SHIFT state. + */ +bool svf_tap_state_is_stable(tap_state_t state); -#endif /* SVF_H */ +#endif /* SVF_H */