types.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. #ifndef _ASM_IA64_TYPES_H
  2. #define _ASM_IA64_TYPES_H
  3. /*
  4.  * This file is never included by application software unless
  5.  * explicitly requested (e.g., via linux/types.h) in which case the
  6.  * application is Linux specific so (user-) name space pollution is
  7.  * not a major issue.  However, for interoperability, libraries still
  8.  * need to be careful to avoid a name clashes.
  9.  *
  10.  * Copyright (C) 1998-2000 Hewlett-Packard Co
  11.  * Copyright (C) 1998-2000 David Mosberger-Tang <davidm@hpl.hp.com>
  12.  */
  13. #ifdef __ASSEMBLY__
  14. # define __IA64_UL(x) (x)
  15. # define __IA64_UL_CONST(x) x
  16. #else
  17. # define __IA64_UL(x) ((unsigned long)(x))
  18. # define __IA64_UL_CONST(x) x##UL
  19. #endif
  20. #ifndef __ASSEMBLY__
  21. typedef unsigned int umode_t;
  22. /*
  23.  * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
  24.  * header files exported to user space
  25.  */
  26. typedef __signed__ char __s8;
  27. typedef unsigned char __u8;
  28. typedef __signed__ short __s16;
  29. typedef unsigned short __u16;
  30. typedef __signed__ int __s32;
  31. typedef unsigned int __u32;
  32. typedef __signed__ long __s64;
  33. typedef unsigned long __u64;
  34. /*
  35.  * These aren't exported outside the kernel to avoid name space clashes
  36.  */
  37. # ifdef __KERNEL__
  38. typedef __s8 s8;
  39. typedef __u8 u8;
  40. typedef __s16 s16;
  41. typedef __u16 u16;
  42. typedef __s32 s32;
  43. typedef __u32 u32;
  44. typedef __s64 s64;
  45. typedef __u64 u64;
  46. #define BITS_PER_LONG 64
  47. /* DMA addresses are 64-bits wide, in general.  */
  48. typedef u64 dma_addr_t;
  49. # endif /* __KERNEL__ */
  50. #endif /* !__ASSEMBLY__ */
  51. #endif /* _ASM_IA64_TYPES_H */