summaryrefslogtreecommitdiff
path: root/arch/microblaze/cpu/timer.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/microblaze/cpu/timer.c')
-rw-r--r--arch/microblaze/cpu/timer.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/microblaze/cpu/timer.c b/arch/microblaze/cpu/timer.c
index 1952804..fdcd9e3 100644
--- a/arch/microblaze/cpu/timer.c
+++ b/arch/microblaze/cpu/timer.c
@@ -42,6 +42,25 @@ ulong get_timer (ulong base)
#ifdef CONFIG_SYS_INTC_0
#ifdef CONFIG_SYS_TIMER_0
+void __udelay(unsigned long usec)
+{
+ int i;
+
+ i = get_timer(0);
+ while ((get_timer(0) - i) < (usec / 1000))
+ ;
+}
+#else
+void __udelay(unsigned long usec)
+{
+ unsigned int i;
+
+ for (i = 0; i < (usec * CONFIG_XILINX_CLOCK_FREQ / 10000000); i++)
+ ;
+}
+#endif
+
+#ifdef CONFIG_SYS_TIMER_0
microblaze_timer_t *tmr = (microblaze_timer_t *) (CONFIG_SYS_TIMER_0_ADDR);
void timer_isr (void *arg)