Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[firefly-linux-kernel-4.4.55.git] / arch / s390 / include / asm / 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 #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 */