Home | History | Annotate | Download | only in include
      1 /*
      2  * Copyright (C) 1999-2011, Broadcom Corporation
      3  *
      4  * Permission to use, copy, modify, and/or distribute this software for any
      5  * purpose with or without fee is hereby granted, provided that the above
      6  * copyright notice and this permission notice appear in all copies.
      7  *
      8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
      9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
     10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
     11  * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
     12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
     13  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
     14  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     15  *
     16  * $Id: typedefs.h,v 1.103.2.1 2010-05-11 18:19:28 Exp $
     17  */
     18 
     19 
     20 #ifndef _TYPEDEFS_H_
     21 #define _TYPEDEFS_H_
     22 
     23 #ifdef SITE_TYPEDEFS
     24 
     25 
     26 
     27 #include "site_typedefs.h"
     28 
     29 #else
     30 
     31 
     32 
     33 #ifdef __cplusplus
     34 
     35 #define TYPEDEF_BOOL
     36 #ifndef FALSE
     37 #define FALSE	false
     38 #endif
     39 #ifndef TRUE
     40 #define TRUE	true
     41 #endif
     42 
     43 #else
     44 
     45 
     46 #endif
     47 
     48 #if defined(__x86_64__)
     49 #define TYPEDEF_UINTPTR
     50 typedef unsigned long long int uintptr;
     51 #endif
     52 
     53 
     54 
     55 
     56 
     57 #if defined(_NEED_SIZE_T_)
     58 typedef long unsigned int size_t;
     59 #endif
     60 
     61 
     62 
     63 
     64 
     65 #if defined(__sparc__)
     66 #define TYPEDEF_ULONG
     67 #endif
     68 
     69 
     70 
     71 #if !defined(LINUX_HYBRID) || defined(LINUX_PORT)
     72 #define TYPEDEF_UINT
     73 #ifndef TARGETENV_android
     74 #define TYPEDEF_USHORT
     75 #define TYPEDEF_ULONG
     76 #endif
     77 #ifdef __KERNEL__
     78 #include <linux/version.h>
     79 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19))
     80 #define TYPEDEF_BOOL
     81 #endif
     82 
     83 #if (LINUX_VERSION_CODE == KERNEL_VERSION(2, 6, 18))
     84 #include <linux/compiler.h>
     85 #ifdef noinline_for_stack
     86 #define TYPEDEF_BOOL
     87 #endif
     88 #endif
     89 #endif
     90 #endif
     91 
     92 
     93 
     94 
     95 
     96 #if defined(__GNUC__) && defined(__STRICT_ANSI__)
     97 #define TYPEDEF_INT64
     98 #define TYPEDEF_UINT64
     99 #endif
    100 
    101 
    102 #if defined(__ICL)
    103 
    104 #define TYPEDEF_INT64
    105 
    106 #if defined(__STDC__)
    107 #define TYPEDEF_UINT64
    108 #endif
    109 
    110 #endif
    111 
    112 #if !defined(__DJGPP__)
    113 
    114 
    115 #if defined(__KERNEL__)
    116 
    117 
    118 #if !defined(LINUX_HYBRID) || defined(LINUX_PORT)
    119 #include <linux/types.h>
    120 #endif
    121 
    122 #else
    123 
    124 
    125 #include <sys/types.h>
    126 
    127 #endif
    128 
    129 #endif
    130 
    131 
    132 
    133 
    134 #define USE_TYPEDEF_DEFAULTS
    135 
    136 #endif
    137 
    138 
    139 
    140 
    141 #ifdef USE_TYPEDEF_DEFAULTS
    142 #undef USE_TYPEDEF_DEFAULTS
    143 
    144 #ifndef TYPEDEF_BOOL
    145 typedef	 unsigned char	bool;
    146 #endif
    147 
    148 
    149 
    150 #ifndef TYPEDEF_UCHAR
    151 typedef unsigned char	uchar;
    152 #endif
    153 
    154 #ifndef TYPEDEF_USHORT
    155 typedef unsigned short	ushort;
    156 #endif
    157 
    158 #ifndef TYPEDEF_UINT
    159 typedef unsigned int	uint;
    160 #endif
    161 
    162 #ifndef TYPEDEF_ULONG
    163 typedef unsigned long	ulong;
    164 #endif
    165 
    166 
    167 
    168 #ifndef TYPEDEF_UINT8
    169 typedef unsigned char	uint8;
    170 #endif
    171 
    172 #ifndef TYPEDEF_UINT16
    173 typedef unsigned short	uint16;
    174 #endif
    175 
    176 #ifndef TYPEDEF_UINT32
    177 typedef unsigned int	uint32;
    178 #endif
    179 
    180 #ifndef TYPEDEF_UINT64
    181 typedef unsigned long long uint64;
    182 #endif
    183 
    184 #ifndef TYPEDEF_UINTPTR
    185 typedef unsigned int	uintptr;
    186 #endif
    187 
    188 #ifndef TYPEDEF_INT8
    189 typedef signed char	int8;
    190 #endif
    191 
    192 #ifndef TYPEDEF_INT16
    193 typedef signed short	int16;
    194 #endif
    195 
    196 #ifndef TYPEDEF_INT32
    197 typedef signed int	int32;
    198 #endif
    199 
    200 #ifndef TYPEDEF_INT64
    201 typedef signed long long int64;
    202 #endif
    203 
    204 
    205 
    206 #ifndef TYPEDEF_FLOAT32
    207 typedef float		float32;
    208 #endif
    209 
    210 #ifndef TYPEDEF_FLOAT64
    211 typedef double		float64;
    212 #endif
    213 
    214 
    215 
    216 #ifndef TYPEDEF_FLOAT_T
    217 
    218 #if defined(FLOAT32)
    219 typedef float32 float_t;
    220 #else
    221 typedef float64 float_t;
    222 #endif
    223 
    224 #endif
    225 
    226 
    227 
    228 #ifndef FALSE
    229 #define FALSE	0
    230 #endif
    231 
    232 #ifndef TRUE
    233 #define TRUE	1
    234 #endif
    235 
    236 #ifndef NULL
    237 #define	NULL	0
    238 #endif
    239 
    240 #ifndef OFF
    241 #define	OFF	0
    242 #endif
    243 
    244 #ifndef ON
    245 #define	ON	1
    246 #endif
    247 
    248 #define	AUTO	(-1)
    249 
    250 
    251 
    252 #ifndef PTRSZ
    253 #define	PTRSZ	sizeof(char*)
    254 #endif
    255 
    256 
    257 
    258 #if defined(__GNUC__)
    259 	#define BWL_COMPILER_GNU
    260 #elif defined(__CC_ARM) && __CC_ARM
    261 	#define BWL_COMPILER_ARMCC
    262 #else
    263 	#error "Unknown compiler!"
    264 #endif
    265 
    266 
    267 #ifndef INLINE
    268 	#if defined(BWL_COMPILER_MICROSOFT)
    269 		#define INLINE __inline
    270 	#elif defined(BWL_COMPILER_GNU)
    271 		#define INLINE __inline__
    272 	#elif defined(BWL_COMPILER_ARMCC)
    273 		#define INLINE	__inline
    274 	#else
    275 		#define INLINE
    276 	#endif
    277 #endif
    278 
    279 #undef TYPEDEF_BOOL
    280 #undef TYPEDEF_UCHAR
    281 #undef TYPEDEF_USHORT
    282 #undef TYPEDEF_UINT
    283 #undef TYPEDEF_ULONG
    284 #undef TYPEDEF_UINT8
    285 #undef TYPEDEF_UINT16
    286 #undef TYPEDEF_UINT32
    287 #undef TYPEDEF_UINT64
    288 #undef TYPEDEF_UINTPTR
    289 #undef TYPEDEF_INT8
    290 #undef TYPEDEF_INT16
    291 #undef TYPEDEF_INT32
    292 #undef TYPEDEF_INT64
    293 #undef TYPEDEF_FLOAT32
    294 #undef TYPEDEF_FLOAT64
    295 #undef TYPEDEF_FLOAT_T
    296 
    297 #endif
    298 
    299 
    300 #define UNUSED_PARAMETER(x) (void)(x)
    301 
    302 
    303 #include <bcmdefs.h>
    304 #endif
    305