diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c
index 3b1e8b0a2c90b47164e99ce18f238efe1a506c82..02272bd93b2278512034d9c8cc981bc317729310 100644
--- a/src/jtag/jtag.c
+++ b/src/jtag/jtag.c
@@ -1071,6 +1071,7 @@ int MINIDRIVER(interface_jtag_add_sleep)(u32 us)
 
 void jtag_add_sleep(u32 us)
 {
+	keep_alive(); /* we might be running on a very slow JTAG clk */
 	int retval=interface_jtag_add_sleep(us);
 	if (retval!=ERROR_OK)
 		jtag_error=retval;