diff --git a/src/jtag/core.c b/src/jtag/core.c index 165e19662b278136df7733fbab005a8d5320d4f8..d838e29b0b8320869728c7c823eca84bd8b6e0b5 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -100,13 +100,13 @@ static jtag_event_callback_t *jtag_event_callbacks; /* speed in kHz*/ static int speed_khz = 0; /* flag if the kHz speed was defined */ -bool hasKHz = false; +static bool hasKHz = false; +static int jtag_speed = 0; struct jtag_interface_s *jtag = NULL; /* configuration */ jtag_interface_t *jtag_interface = NULL; -static int jtag_speed = 0; void jtag_set_error(int error) { @@ -1188,6 +1188,7 @@ int jtag_set_speed(int speed) jtag_speed = speed; /* this command can be called during CONFIG, * in which case jtag isn't initialized */ + hasKHz = !jtag; return jtag ? jtag->speed(speed) : ERROR_OK; } diff --git a/src/jtag/tcl.c b/src/jtag/tcl.c index 1ec307abf1b477536fb65b9b81e5bfe21ebfe0c2..99ed1a3682e0def386f03a5ca5af7b542b7b6a9a 100644 --- a/src/jtag/tcl.c +++ b/src/jtag/tcl.c @@ -39,8 +39,6 @@ #include <strings.h> #endif -extern bool hasKHz; - extern const Jim_Nvp nvp_jtag_tap_event[]; /* jtag interfaces (parport, FTDI-USB, TI-USB, ...) @@ -994,11 +992,8 @@ static int handle_jtag_khz_command(struct command_context_s *cmd_ctx, char *cmd, return retval; } cur_speed = speed_div1; - - retval = jtag_set_speed(cur_speed); } - else - hasKHz = true; + retval = jtag_set_speed(cur_speed); } cur_speed = jtag_get_speed_khz();