Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6.git] / include / asm-generic / types.h
1 #ifndef _ASM_GENERIC_TYPES_H
2 #define _ASM_GENERIC_TYPES_H
3 /*
4  * int-ll64 is used practically everywhere now,
5  * so use it as a reasonable default.
6  */
7 #include <asm-generic/int-ll64.h>
8
9 #ifndef __ASSEMBLY__
10
11 typedef unsigned short umode_t;
12
13 #endif /* __ASSEMBLY__ */
14
15 /*
16  * These aren't exported outside the kernel to avoid name space clashes
17  */
18 #ifdef __KERNEL__
19 #ifndef __ASSEMBLY__
20 /*
21  * DMA addresses may be very different from physical addresses
22  * and pointers. i386 and powerpc may have 64 bit DMA on 32 bit
23  * systems, while sparc64 uses 32 bit DMA addresses for 64 bit
24  * physical addresses.
25  * This default defines dma_addr_t to have the same size as
26  * phys_addr_t, which is the most common way.
27  * Do not define the dma64_addr_t type, which never really
28  * worked.
29  */
30 #ifndef dma_addr_t
31 #ifdef CONFIG_PHYS_ADDR_T_64BIT
32 typedef u64 dma_addr_t;
33 #else
34 typedef u32 dma_addr_t;
35 #endif /* CONFIG_PHYS_ADDR_T_64BIT */
36 #endif /* dma_addr_t */
37
38 #endif /* __ASSEMBLY__ */
39
40 #endif /* __KERNEL__ */
41
42 #endif /* _ASM_GENERIC_TYPES_H */