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