special usb hub handling, IDE disks, and retries all over the place
[linux-2.4.git] / include / asm-s390 / types.h
1 /*
2  *  include/asm-s390/types.h
3  *
4  *  S390 version
5  *
6  *  Derived from "include/asm-i386/types.h"
7  */
8
9 #ifndef _S390_TYPES_H
10 #define _S390_TYPES_H
11
12 typedef unsigned short umode_t;
13
14 /*
15  * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
16  * header files exported to user space
17  */
18
19 typedef __signed__ char __s8;
20 typedef unsigned char __u8;
21
22 typedef __signed__ short __s16;
23 typedef unsigned short __u16;
24
25 typedef __signed__ int __s32;
26 typedef unsigned int __u32;
27
28 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
29 typedef __signed__ long long __s64;
30 typedef unsigned long long __u64;
31 #endif
32 /* A address type so that arithmetic can be done on it & it can be upgraded to
33    64 bit when neccessary 
34 */
35 typedef __u32  addr_t; 
36 typedef __s32  saddr_t;
37 /*
38  * These aren't exported outside the kernel to avoid name space clashes
39  */
40 #ifdef __KERNEL__
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 long s64;
52 typedef unsigned long long u64;
53
54 #define BITS_PER_LONG 32
55
56 typedef u32 dma_addr_t;
57 typedef u32 dma64_addr_t;
58
59 typedef union {
60         unsigned long long pair;
61         struct {
62                 unsigned long even;
63                 unsigned long odd;
64         } subreg;
65 } register_pair;
66
67 #endif                                 /* __KERNEL__                       */
68 #endif