diff options
Diffstat (limited to 'arch/cris/include/arch-v10/arch/delay.h')
-rw-r--r-- | arch/cris/include/arch-v10/arch/delay.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/cris/include/arch-v10/arch/delay.h b/arch/cris/include/arch-v10/arch/delay.h new file mode 100644 index 0000000..39481f6 --- /dev/null +++ b/arch/cris/include/arch-v10/arch/delay.h @@ -0,0 +1,20 @@ +#ifndef _CRIS_ARCH_DELAY_H +#define _CRIS_ARCH_DELAY_H + +static 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) */ + + + |