X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fjtag%2Fjtag.h;h=bf04e41c2b61b1e74affac2a9ba91a3b5ab4f470;hb=1006986ab1f430cfa705dda4db422ff3c0f0a994;hp=cff2a662c9e898885f31eb774e05e4ffcdc4f73c;hpb=a28eaa85f73759bb189a46308642502c9fa5aa4b;p=openocd.git diff --git a/src/jtag/jtag.h b/src/jtag/jtag.h index cff2a662c9..bf04e41c2b 100644 --- a/src/jtag/jtag.h +++ b/src/jtag/jtag.h @@ -186,7 +186,6 @@ struct jtag_tap_s }; extern jtag_tap_t *jtag_AllTaps(void); extern jtag_tap_t *jtag_TapByPosition(int n); -extern jtag_tap_t *jtag_NextEnabledTap( jtag_tap_t * ); extern jtag_tap_t *jtag_TapByPosition( int n ); extern jtag_tap_t *jtag_TapByString( const char *dotted_name ); extern jtag_tap_t *jtag_TapByJimObj( Jim_Interp *interp, Jim_Obj *obj ); @@ -195,6 +194,27 @@ extern int jtag_NumEnabledTaps(void); extern int jtag_NumTotalTaps(void); +static __inline__ jtag_tap_t * +jtag_NextEnabledTap( jtag_tap_t *p ) +{ + if( p == NULL ){ + // start at the head of list + p = jtag_AllTaps(); + } else { + // start *after* this one + p = p->next_tap; + } + while( p ){ + if( p->enabled ){ + break; + } else { + p = p->next_tap; + } + } + return p; +} + + enum reset_line_mode