1 #ifndef _ASM_X86_TYPES_H 2 #define _ASM_X86_TYPES_H 3 4 #include <asm-generic/int-ll64.h> 5 6 #ifndef __ASSEMBLY__ 7 8 typedef unsigned short umode_t; 9 10 #endif /* __ASSEMBLY__ */ 11 12 /* 13 * These aren't exported outside the kernel to avoid name space clashes 14 */ 15 #ifdef __KERNEL__ 16 17 #ifdef CONFIG_X86_32 18 # define BITS_PER_LONG 32 19 #else 20 # define BITS_PER_LONG 64 21 #endif 22 23 #ifndef __ASSEMBLY__ 24 25 typedef u64 dma64_addr_t; 26 #if defined(CONFIG_X86_64) || defined(CONFIG_HIGHMEM64G) 27 /* DMA addresses come in 32-bit and 64-bit flavours. */ 28 typedef u64 dma_addr_t; 29 #else 30 typedef u32 dma_addr_t; 31 #endif 32 33 #endif /* __ASSEMBLY__ */ 34 #endif /* __KERNEL__ */ 35 36 #endif /* _ASM_X86_TYPES_H */ 37