URL
https://opencores.org/ocsvn/or1k_old/or1k_old/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 1765 |
Rev 1782 |
#ifndef _OR32_DELAY_H
|
#ifndef _OR32_DELAY_H
|
#define _OR32_DELAY_H
|
#define _OR32_DELAY_H
|
|
|
extern unsigned long loops_per_sec;
|
extern unsigned long loops_per_sec;
|
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
#include <linux/config.h>
|
#include <linux/config.h>
|
|
|
extern __inline__ void __delay(unsigned long loops)
|
extern __inline__ void __delay(unsigned long loops)
|
{
|
{
|
__asm__ __volatile__ ("1: l.sfeqi %0,0; \
|
__asm__ __volatile__ ("1: l.sfeqi %0,0; \
|
l.bnf 1b; \
|
l.bnf 1b; \
|
l.addi %0,%0,-1;"
|
l.addi %0,%0,-1;"
|
: "=r" (loops) : "0" (loops));
|
: "=r" (loops) : "0" (loops));
|
}
|
}
|
|
|
extern __inline__ void udelay(unsigned long usecs)
|
extern __inline__ void udelay(unsigned long usecs)
|
{
|
{
|
/* Sigh */
|
/* Sigh */
|
__delay(usecs);
|
__delay(usecs);
|
}
|
}
|
|
|
#define muldiv(a, b, c) (((a)*(b))/(c))
|
#define muldiv(a, b, c) (((a)*(b))/(c))
|
|
|
#endif /* defined(_OR32_DELAY_H) */
|
#endif /* defined(_OR32_DELAY_H) */
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.