asm-generic: introduce asm/bitsperlong.h
[sfrench/cifs-2.6.git] / arch / sparc / include / asm / types.h
1 #ifndef _SPARC_TYPES_H
2 #define _SPARC_TYPES_H
3 /*
4  * This file is never included by application software unless
5  * explicitly requested (e.g., via linux/types.h) in which case the
6  * application is Linux specific so (user-) name space pollution is
7  * not a major issue.  However, for interoperability, libraries still
8  * need to be careful to avoid a name clashes.
9  */
10
11 #if defined(__sparc__) && defined(__arch64__)
12
13 /*** SPARC 64 bit ***/
14 #include <asm-generic/int-ll64.h>
15
16 #ifndef __ASSEMBLY__
17
18 typedef unsigned short umode_t;
19
20 #endif /* __ASSEMBLY__ */
21
22 #ifdef __KERNEL__
23
24 #ifndef __ASSEMBLY__
25
26 /* Dma addresses come in generic and 64-bit flavours.  */
27
28 typedef u32 dma_addr_t;
29 typedef u64 dma64_addr_t;
30
31 #endif /* __ASSEMBLY__ */
32
33 #endif /* __KERNEL__ */
34 #else
35
36 /*** SPARC 32 bit ***/
37 #include <asm-generic/int-ll64.h>
38
39 #ifndef __ASSEMBLY__
40
41 typedef unsigned short umode_t;
42
43 #endif /* __ASSEMBLY__ */
44
45 #ifdef __KERNEL__
46
47 #ifndef __ASSEMBLY__
48
49 typedef u32 dma_addr_t;
50 typedef u32 dma64_addr_t;
51
52 #endif /* __ASSEMBLY__ */
53
54 #endif /* __KERNEL__ */
55
56 #endif /* defined(__sparc__) && defined(__arch64__) */
57
58 #endif /* defined(_SPARC_TYPES_H) */