Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
include
asm-generic
io-64-nonatomic-hi-lo.h
Go to the documentation of this file.
1
#ifndef _ASM_IO_64_NONATOMIC_HI_LO_H_
2
#define _ASM_IO_64_NONATOMIC_HI_LO_H_
3
4
#include <
linux/io.h
>
5
#include <asm-generic/int-ll64.h>
6
7
#ifndef readq
8
static
inline
__u64
readq
(
const
volatile
void
__iomem
*
addr
)
9
{
10
const
volatile
u32
__iomem
*
p
=
addr
;
11
u32
low
,
high
;
12
13
high =
readl
(p + 1);
14
low =
readl
(p);
15
16
return
low + ((
u64
)high << 32);
17
}
18
#endif
19
20
#ifndef writeq
21
static
inline
void
writeq
(
__u64
val
,
volatile
void
__iomem
*
addr
)
22
{
23
writel
(val >> 32, addr + 4);
24
writel
(val, addr);
25
}
26
#endif
27
28
#endif
/* _ASM_IO_64_NONATOMIC_HI_LO_H_ */
Generated on Thu Jan 10 2013 14:50:52 for Linux Kernel by
1.8.2