summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/helper/command.c7
-rw-r--r--src/helper/log.c8
-rw-r--r--src/target/target/zy1000.cfg2
3 files changed, 11 insertions, 6 deletions
diff --git a/src/helper/command.c b/src/helper/command.c
index d34c402b..9ade320c 100644
--- a/src/helper/command.c
+++ b/src/helper/command.c
@@ -741,7 +741,12 @@ int handle_sleep_command(struct command_context_s *cmd_ctx, char *cmd, char **ar
busy_sleep(duration);
} else
{
- alive_sleep(duration);
+ long long then=timeval_ms();
+ while ((timeval_ms()-then)<duration)
+ {
+ target_call_timer_callbacks_now();
+ usleep(1000);
+ }
}
return ERROR_OK;
diff --git a/src/helper/log.c b/src/helper/log.c
index f7b2fc96..7ea2a6cb 100644
--- a/src/helper/log.c
+++ b/src/helper/log.c
@@ -400,14 +400,14 @@ void kept_alive()
void alive_sleep(int ms)
{
int i;
- for (i=0; i<ms; i+=500)
+ int napTime=10;
+ for (i=0; i<ms; i+=napTime)
{
int sleep_a_bit=ms-i;
- if (sleep_a_bit>500)
+ if (sleep_a_bit>napTime)
{
- sleep_a_bit=500;
+ sleep_a_bit=napTime;
}
- keep_alive();
usleep(sleep_a_bit*1000);
keep_alive();
}
diff --git a/src/target/target/zy1000.cfg b/src/target/target/zy1000.cfg
index b1c6034d..52221251 100644
--- a/src/target/target/zy1000.cfg
+++ b/src/target/target/zy1000.cfg
@@ -86,7 +86,7 @@ proc production_test {} {
sleep 1000
target_request debugmsgs enable
reset run
- sleep 20000
+ sleep 25000
target_request debugmsgs disable
return "See IP address above..."
} \ No newline at end of file