4#ifndef __LINUX_KERNEL_H__
5#define __LINUX_KERNEL_H__
47#define udelay(us) AA64SleepUS(us)
48#define mdelay(ms) AA64SleepMS(ms)
49#define msleep(ms) mdelay(ms)
50#define usleep(us) AA64SleepUS(us)
56#define kmalloc(size, flags) kmalloc(size)
57#define kzalloc(size, flags) kcalloc(size)
59#define container_of(ptr, type, member) \
60 ((type*)((char*)(ptr)- offsetof(type,member)))
62#define offsetof(type, member) \
63 ((size_t)&((type*)0)->member)
65#define IS_ENABLED(opt) (!!(opt))
75#define spin_lock_init(l) do{} while(0)
76#define spin_lock_irqsave(l,f) do{(f) = 0;}while(0)
77#define spin_unlock_irqrestore(l, f) do{}while(0)
78#define mutex_init(m) do{} while(0)
79#define mutex_lock(m) do{}while(0)
80#define mutex_unlock(m) do{} while(0)
101#define IRQ_WAKE_THREAD 2
109#define __chk_user_ptr(x) (void)0
110#define __chk_io_ptr(x) (void)0
122#define MAX_ERRNO 4095
123#define IS_ERR_VALUE(x) ((x) >= (uintptr_t)-MAX_ERRNO)
126#define ENAMETOOLONG 36
131#define EWOULDBLOCK EAGAIN
147#define EDESTADDRREQ 89
149#define ENOPROTOOPT 92
150#define EPROTONOSUPPORT 93
151#define ESOCKTNOSUPPORT 94
153#define EAFNOSUPPORT 97
155#define EADDRNOTAVAIL 99
157#define ENETUNREACH 101
159#define ECONNABORTED 103
160#define ECONNRESET 104
161#define ECONNRESET 104
166#define ETOOMANYREGS 109
168#define ECONNREFUSED 111
171#define readb(addr) (*(volatile u8*)((uint8_t*)addr))
172#define readw(addr) (*(volatile u16*)((uint8_t*)addr))
173#define readl(addr) (*(volatile u32*)((uint8_t*)addr))
174#define writeb(v, addr) (*(volatile u8*)((uint8_t*)addr) = (v))
175#define writew(v, addr) (*(volatile u16*)((uint8_t*)addr) = (v))
176#define writel(v, addr) (*(volatile u32*)((uint8_t*)addr) = (v))
178#define BITS_PER_LONG 64
179#define BITS_PER_BYTE 8
181#define BIT(n) (1UL << (n))
182#define BIT_ULL(n) (1ULL << (n))
183#define GENMASK(h, l) (((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG-1-(h))))
184#define GENMASK_ULL(h,l) (((~0ULL) << (l)) & (~0ULL >> (63-(h))))
188#define NSEC_PER_USEC 1000LL
189#define NSEC_PER_MSEC 1000000LL
190#define NSEC_PER_SEC 1000000000LL
191#define USEC_PER_MSEC 1000LL
192#define USEC_PER_SEC 1000000LL
193#define MSEC_PER_SEC 1000LL
195#define KTIME_MAX ((ktime_t)~((uint64_t)1<<63))
196#define KTIME_MIN (~KTIME_MAX - 1)
197#define KTIME_SEC_MAX (KTIME_MAX / NSEC_PER_SEC)
199static inline ktime_t ktime_set(
long secs,
unsigned long nsecs) {
228 if (a < b)
return -1;
274 return ktime_to_us(ktime_sub(later, earlier));
278 return ktime_to_ms(ktime_sub(later, earlier));
281static inline ktime_t ktime_get(
void) {
288static inline ktime_t ktime_get_mono_fast_ns(
void) {
292static inline uint64_t ktime_get_ns(
void) {
297#define WARN_ON(cond) \
298 ((cond) ? (UARTDebugOut("[WARN] %s:%d %s \r\n", __FILE__, __LINE__, #cond)))
299#elif defined(__GNUC__) && defined(__clang__)
300#define WARN_ON(cond) ({ \
303UARTDebugOut("[WARN] %s:%d \r\n", __FILE__, __LINE__); \
unsigned uintptr_t
Definition stdint.h:95
AU_EXTERN AU_EXPORT uint64_t get_cntpct_el0()
AU_EXTERN AU_EXPORT uint64_t get_cntfrq_el0()
int int32_t
Definition acefiex.h:160
unsigned int uint32_t
Definition acefiex.h:163
COMPILER_DEPENDENT_INT64 int64_t
Definition acefiex.h:164
short int int16_t
Definition acefiex.h:159
unsigned char uint8_t
Definition acefiex.h:161
COMPILER_DEPENDENT_UINT64 uint64_t
Definition acefiex.h:165
unsigned short int uint16_t
Definition acefiex.h:162
signed char int8_t
Definition acefiex.h:158
#define NSEC_PER_SEC
Definition kernel.h:190
uintptr_t phys_addr_t
Definition kernel.h:67
int8_t __s8
Definition kernel.h:33
uint32_t __be32
Definition kernel.h:43
#define NSEC_PER_USEC
Definition kernel.h:188
#define MSEC_PER_SEC
Definition kernel.h:193
uint64_t blkcnt_t
Definition kernel.h:83
int64_t s64
Definition kernel.h:27
int32_t __s32
Definition kernel.h:35
uint32_t __u32
Definition kernel.h:31
uint64_t u64
Definition kernel.h:23
uint32_t dev_t
Definition kernel.h:87
int64_t __s64
Definition kernel.h:36
unsigned long irq_hw_number_t
Definition kernel.h:95
uint64_t __be64
Definition kernel.h:44
int64_t ktime_t
Definition kernel.h:186
uintptr_t dma_addr_t
Definition kernel.h:69
uint8_t __u8
Definition kernel.h:29
uint64_t loff_t
Definition kernel.h:84
uintptr_t resource_size_t
Definition kernel.h:68
unsigned long pgoff_t
Definition kernel.h:96
uint16_t __le16
Definition kernel.h:39
uint8_t u8
Definition kernel.h:20
uint64_t __le64
Definition kernel.h:41
uint16_t __be16
Definition kernel.h:42
int irqreturn_t
Definition kernel.h:94
unsigned int gfp_t
Definition kernel.h:91
unsigned long kernel_ulong_t
Definition kernel.h:97
int16_t __s16
Definition kernel.h:34
int8_t s8
Definition kernel.h:24
uint32_t nlink_t
Definition kernel.h:89
uint32_t gid_t
Definition kernel.h:86
int16_t s16
Definition kernel.h:25
uint16_t __u16
Definition kernel.h:30
uint64_t __u64
Definition kernel.h:32
uint16_t u16
Definition kernel.h:21
#define NSEC_PER_MSEC
Definition kernel.h:189
uint32_t __le32
Definition kernel.h:40
int spinlock_t
Definition kernel.h:71
int32_t s32
Definition kernel.h:26
uint64_t sector_t
Definition kernel.h:82
unsigned int fmode_t
Definition kernel.h:92
unsigned int umode_t
Definition kernel.h:93
uint32_t ino_t
Definition kernel.h:88
int mutex
Definition kernel.h:72
uint32_t uid_t
Definition kernel.h:85
uint8_t __le8
Definition kernel.h:38
uint32_t u32
Definition kernel.h:22
uintptr_t io_addr_t
Definition kernel.h:70