Fix problem with sleep in NetConsole (use get_timer())

Patch by Stefan Roese, 20 Oct 2005
This commit is contained in:
Stefan Roese 2005-10-20 16:36:44 +02:00
parent 1e25f957c8
commit c4c13df284
2 changed files with 11 additions and 9 deletions

View file

@ -2,6 +2,9 @@
Changes for U-Boot 1.1.4:
======================================================================
* Fix problem with sleep in NetConsole (use get_timer())
Patch by Stefan Roese, 20 Oct 2005
* Add NetConsole Support for AMCC eval boards
Patch by Stefan Roese, 20 Oct 2005

View file

@ -31,6 +31,7 @@
int do_sleep (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
{
ulong start = get_timer(0);
ulong delay;
if (argc != 2) {
@ -38,20 +39,18 @@ int do_sleep (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
return 1;
}
delay = simple_strtoul(argv[1], NULL, 10);
delay = simple_strtoul(argv[1], NULL, 10) * CFG_HZ;
while (delay) {
int i;
for (i=0; i<1000; ++i) {
if (ctrlc ()) {
return (-1);
}
udelay (1000);
while (get_timer(start) < delay) {
if (ctrlc ()) {
return (-1);
}
--delay;
udelay (100);
}
return 0;
}
/* Implemented in $(CPU)/interrupts.c */
#if (CONFIG_COMMANDS & CFG_CMD_IRQ)
int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);