linux/include/asm-s390/types.h
H. Peter Anvin 2ccdcfeeca types: s390: fix #ifdef reversal in <asm-s390/types.h>
The #ifdef for the integer types was reversed; the standard pattern in
these files are:

#ifndef __s390x__
/* 32-bit code */
#else
/* 64-bit code */
#endif

Stick with the original pattern, but make sure the 32-bit code
actually comes first!

Reported by Al Viro.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
2008-05-12 08:49:59 -07:00

57 lines
982 B
C

/*
* 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 u32 dma_addr_t;
#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 */