blob: 6514835df7832a2bb48eb2690ae3657100aef748 [file] [log] [blame]
Ingo van Lilf0f778a2009-11-24 14:09:21 +01001/*
2 * (C) Copyright 2000-2009
3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Ingo van Lilf0f778a2009-11-24 14:09:21 +01006 */
7
8#include <common.h>
9#include <watchdog.h>
10
Rob Herringa0f85d32013-10-04 08:40:03 -050011#if CONFIG_SYS_HZ != 1000
12#warning "CONFIG_SYS_HZ must be 1000 and should not be defined by platforms"
13#endif
14
Ingo van Lilf0f778a2009-11-24 14:09:21 +010015#ifndef CONFIG_WD_PERIOD
16# define CONFIG_WD_PERIOD (10 * 1000 * 1000) /* 10 seconds default*/
17#endif
18
19/* ------------------------------------------------------------------------- */
20
21void udelay(unsigned long usec)
22{
23 ulong kv;
24
25 do {
26 WATCHDOG_RESET();
27 kv = usec > CONFIG_WD_PERIOD ? CONFIG_WD_PERIOD : usec;
28 __udelay (kv);
29 usec -= kv;
30 } while(usec);
31}
Anatolij Gustschin589c2ff2011-10-12 02:31:39 +000032
33void mdelay(unsigned long msec)
34{
35 while (msec--)
36 udelay(1000);
37}