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 #include <asm-generic/int-ll64.h> 13 14 #ifndef __ASSEMBLY__ 15 16 typedef unsigned short umode_t; 17 18 /* A address type so that arithmetic can be done on it & it can be upgraded to 19 64 bit when necessary 20 */ 21 typedef unsigned long addr_t; 22 typedef __signed__ long saddr_t; 23 24 #endif /* __ASSEMBLY__ */ 25 26 /* 27 * These aren't exported outside the kernel to avoid name space clashes 28 */ 29 #ifdef __KERNEL__ 30 31 #ifndef __ASSEMBLY__ 32 33 #ifndef __s390x__ 34 typedef union { 35 unsigned long long pair; 36 struct { 37 unsigned long even; 38 unsigned long odd; 39 } subreg; 40 } register_pair; 41 42 #endif /* ! __s390x__ */ 43 #endif /* __ASSEMBLY__ */ 44 #endif /* __KERNEL__ */ 45 #endif /* _S390_TYPES_H */ 46