patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / include / asm-sparc64 / types.h
1 /* $Id: types.h,v 1.4 2001/10/09 02:24:35 davem Exp $ */
2 #ifndef _SPARC64_TYPES_H
3 #define _SPARC64_TYPES_H
4
5 /*
6  * This file is never included by application software unless
7  * explicitly requested (e.g., via linux/types.h) in which case the
8  * application is Linux specific so (user-) name space pollution is
9  * not a major issue.  However, for interoperability, libraries still
10  * need to be careful to avoid a name clashes.
11  */
12
13 #ifndef __ASSEMBLY__
14
15 typedef unsigned short umode_t;
16
17 /*
18  * _xx is ok: it doesn't pollute the POSIX namespace. Use these in the
19  * header files exported to user space.
20  */
21
22 typedef __signed__ char __s8;
23 typedef unsigned char __u8;
24
25 typedef __signed__ short __s16;
26 typedef unsigned short __u16;
27
28 typedef __signed__ int __s32;
29 typedef unsigned int __u32;
30
31 typedef __signed__ long __s64;
32 typedef unsigned long __u64;
33
34 #endif /* __ASSEMBLY__ */
35
36 #ifdef __KERNEL__
37
38 #define BITS_PER_LONG 64
39
40 #ifndef __ASSEMBLY__
41
42 typedef __signed__ char s8;
43 typedef unsigned char u8;
44
45 typedef __signed__ short s16;
46 typedef unsigned short u16;
47
48 typedef __signed__ int s32;
49 typedef unsigned int u32;
50
51 typedef __signed__ long s64;
52 typedef unsigned long u64;
53
54 /* Dma addresses come in generic and 64-bit flavours.  */
55
56 typedef u32 dma_addr_t;
57 typedef u64 dma64_addr_t;
58
59 typedef unsigned short kmem_bufctl_t;
60
61 #endif /* __ASSEMBLY__ */
62
63 #endif /* __KERNEL__ */
64
65 #endif /* defined(_SPARC64_TYPES_H) */