aboutsummaryrefslogtreecommitdiff
path: root/include/asm-cris/arch-v10/delay.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-cris/arch-v10/delay.h')
-rw-r--r--include/asm-cris/arch-v10/delay.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/asm-cris/arch-v10/delay.h b/include/asm-cris/arch-v10/delay.h
new file mode 100644
index 00000000000..cfedae0d2f5
--- /dev/null
+++ b/include/asm-cris/arch-v10/delay.h
@@ -0,0 +1,20 @@
+#ifndef _CRIS_ARCH_DELAY_H
+#define _CRIS_ARCH_DELAY_H
+
+extern __inline__ void __delay(int loops)
+{
+ __asm__ __volatile__ (
+ "move.d %0,$r9\n\t"
+ "beq 2f\n\t"
+ "subq 1,$r9\n\t"
+ "1:\n\t"
+ "bne 1b\n\t"
+ "subq 1,$r9\n"
+ "2:"
+ : : "g" (loops) : "r9");
+}
+
+#endif /* defined(_CRIS_ARCH_DELAY_H) */
+
+
+