123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /*
- * include/asm-s390/types.h
- *
- * S390 version
- *
- * Derived from "include/asm-i386/types.h"
- */
- #ifndef _S390_TYPES_H
- #define _S390_TYPES_H
- #ifndef __s390x__
- # include <asm-generic/int-ll64.h>
- #else
- # include <asm-generic/int-l64.h>
- #endif
- #ifndef __ASSEMBLY__
- typedef unsigned short umode_t;
- /* A address type so that arithmetic can be done on it & it can be upgraded to
- 64 bit when necessary
- */
- typedef unsigned long addr_t;
- typedef __signed__ long saddr_t;
- #endif /* __ASSEMBLY__ */
- /*
- * These aren't exported outside the kernel to avoid name space clashes
- */
- #ifdef __KERNEL__
- #ifndef __s390x__
- #define BITS_PER_LONG 32
- #else
- #define BITS_PER_LONG 64
- #endif
- #ifndef __ASSEMBLY__
- typedef u64 dma64_addr_t;
- #ifdef __s390x__
- /* DMA addresses come in 32-bit and 64-bit flavours. */
- typedef u64 dma_addr_t;
- #else
- typedef u32 dma_addr_t;
- #endif
- #ifndef __s390x__
- typedef union {
- unsigned long long pair;
- struct {
- unsigned long even;
- unsigned long odd;
- } subreg;
- } register_pair;
- #endif /* ! __s390x__ */
- #endif /* __ASSEMBLY__ */
- #endif /* __KERNEL__ */
- #endif /* _S390_TYPES_H */
|