Blame view
include/linux/io-64-nonatomic-lo-hi.h
610 Bytes
2f8e2c877 move io-64-nonato... |
1 2 |
#ifndef _LINUX_IO_64_NONATOMIC_LO_HI_H_ #define _LINUX_IO_64_NONATOMIC_LO_HI_H_ |
797a796a1 asm-generic: arch... |
3 4 5 |
#include <linux/io.h> #include <asm-generic/int-ll64.h> |
3a044178c readq/writeq: Add... |
6 |
static inline __u64 lo_hi_readq(const volatile void __iomem *addr) |
797a796a1 asm-generic: arch... |
7 8 9 10 11 12 13 14 15 |
{ const volatile u32 __iomem *p = addr; u32 low, high; low = readl(p); high = readl(p + 1); return low + ((u64)high << 32); } |
797a796a1 asm-generic: arch... |
16 |
|
3a044178c readq/writeq: Add... |
17 |
static inline void lo_hi_writeq(__u64 val, volatile void __iomem *addr) |
797a796a1 asm-generic: arch... |
18 19 20 21 |
{ writel(val, addr); writel(val >> 32, addr + 4); } |
3a044178c readq/writeq: Add... |
22 23 24 25 26 27 28 |
#ifndef readq #define readq lo_hi_readq #endif #ifndef writeq #define writeq lo_hi_writeq |
797a796a1 asm-generic: arch... |
29 |
#endif |
2f8e2c877 move io-64-nonato... |
30 |
#endif /* _LINUX_IO_64_NONATOMIC_LO_HI_H_ */ |