14e1bc9a0SAchim Leubner /******************************************************************************* 24e1bc9a0SAchim Leubner *Copyright (c) 2014 PMC-Sierra, Inc. All rights reserved. 34e1bc9a0SAchim Leubner * 44e1bc9a0SAchim Leubner *Redistribution and use in source and binary forms, with or without modification, are permitted provided 54e1bc9a0SAchim Leubner *that the following conditions are met: 64e1bc9a0SAchim Leubner *1. Redistributions of source code must retain the above copyright notice, this list of conditions and the 74e1bc9a0SAchim Leubner *following disclaimer. 84e1bc9a0SAchim Leubner *2. Redistributions in binary form must reproduce the above copyright notice, 94e1bc9a0SAchim Leubner *this list of conditions and the following disclaimer in the documentation and/or other materials provided 104e1bc9a0SAchim Leubner *with the distribution. 114e1bc9a0SAchim Leubner * 124e1bc9a0SAchim Leubner *THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED 134e1bc9a0SAchim Leubner *WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 144e1bc9a0SAchim Leubner *FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 154e1bc9a0SAchim Leubner *FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 164e1bc9a0SAchim Leubner *NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 174e1bc9a0SAchim Leubner *BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 184e1bc9a0SAchim Leubner *LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 194e1bc9a0SAchim Leubner *SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE 204e1bc9a0SAchim Leubner * 214e1bc9a0SAchim Leubner * 224e1bc9a0SAchim Leubner *******************************************************************************/ 234e1bc9a0SAchim Leubner /****************************************************************************** 244e1bc9a0SAchim Leubner 254e1bc9a0SAchim Leubner Note: 264e1bc9a0SAchim Leubner ******************************************************************************* 274e1bc9a0SAchim Leubner Module Name: 284e1bc9a0SAchim Leubner ostypes.h 294e1bc9a0SAchim Leubner Abstract: 304e1bc9a0SAchim Leubner Request by fclayer for data type define. 314e1bc9a0SAchim Leubner Authors: 324e1bc9a0SAchim Leubner EW - Yiding(Eddie) Wang 334e1bc9a0SAchim Leubner Environment: 344e1bc9a0SAchim Leubner Kernel or loadable module 354e1bc9a0SAchim Leubner 364e1bc9a0SAchim Leubner Version Control Information: 374e1bc9a0SAchim Leubner $ver. 1.0.0 384e1bc9a0SAchim Leubner 394e1bc9a0SAchim Leubner Revision History: 404e1bc9a0SAchim Leubner $Revision: 114125 $0.1.0 414e1bc9a0SAchim Leubner $Date: 2012-04-23 23:37:56 -0700 (Mon, 23 Apr 2012) $09-27-2001 424e1bc9a0SAchim Leubner $Modtime: 11/12/01 11:15a $15:56:00 434e1bc9a0SAchim Leubner 444e1bc9a0SAchim Leubner Notes: 454e1bc9a0SAchim Leubner **************************** MODIFICATION HISTORY ***************************** 464e1bc9a0SAchim Leubner NAME DATE Rev. DESCRIPTION 474e1bc9a0SAchim Leubner ---- ---- ---- ----------- 484e1bc9a0SAchim Leubner EW 09-16-2002 0.1.0 Header file for most constant definitions 494e1bc9a0SAchim Leubner ******************************************************************************/ 504e1bc9a0SAchim Leubner 514e1bc9a0SAchim Leubner #ifndef __OSTYPES_H__ 524e1bc9a0SAchim Leubner #define __OSTYPES_H__ 534e1bc9a0SAchim Leubner 544e1bc9a0SAchim Leubner #include <sys/types.h> 554e1bc9a0SAchim Leubner #include <sys/kernel.h> 564e1bc9a0SAchim Leubner 574e1bc9a0SAchim Leubner 584e1bc9a0SAchim Leubner /* 594e1bc9a0SAchim Leubner ** Included for Linux 2.4, built in kernel and other possible cases. 604e1bc9a0SAchim Leubner */ 614e1bc9a0SAchim Leubner /* 624e1bc9a0SAchim Leubner #ifdef TARGET_DRIVER 634e1bc9a0SAchim Leubner #if !defined(AGBUILD_TFE_DRIVER) && !defined(COMBO_IBE_TFE_MODULE) 644e1bc9a0SAchim Leubner #include "lxtgtdef.h" 654e1bc9a0SAchim Leubner #endif 664e1bc9a0SAchim Leubner #endif 674e1bc9a0SAchim Leubner */ 684e1bc9a0SAchim Leubner /* 694e1bc9a0SAchim Leubner ** Included for possible lower layer ignorance. 704e1bc9a0SAchim Leubner */ 714e1bc9a0SAchim Leubner #include "osdebug.h" 724e1bc9a0SAchim Leubner 734e1bc9a0SAchim Leubner #ifdef STATIC 744e1bc9a0SAchim Leubner #undef STATIC 754e1bc9a0SAchim Leubner #endif 764e1bc9a0SAchim Leubner 774e1bc9a0SAchim Leubner #define STATIC 784e1bc9a0SAchim Leubner 794e1bc9a0SAchim Leubner #ifndef INLINE 804e1bc9a0SAchim Leubner #define INLINE inline 814e1bc9a0SAchim Leubner #endif 824e1bc9a0SAchim Leubner 834e1bc9a0SAchim Leubner 844e1bc9a0SAchim Leubner #ifndef FORCEINLINE 854e1bc9a0SAchim Leubner #define FORCEINLINE 864e1bc9a0SAchim Leubner //#define FORCEINLINE inline 874e1bc9a0SAchim Leubner 884e1bc9a0SAchim Leubner #endif 894e1bc9a0SAchim Leubner #if defined (__amd64__) 904e1bc9a0SAchim Leubner #define BITS_PER_LONG 64 914e1bc9a0SAchim Leubner #else 924e1bc9a0SAchim Leubner #define BITS_PER_LONG 32 934e1bc9a0SAchim Leubner #endif 944e1bc9a0SAchim Leubner 954e1bc9a0SAchim Leubner 964e1bc9a0SAchim Leubner typedef unsigned char bit8; 974e1bc9a0SAchim Leubner typedef unsigned short bit16; 984e1bc9a0SAchim Leubner typedef unsigned int bit32; 994e1bc9a0SAchim Leubner typedef char sbit8; 1004e1bc9a0SAchim Leubner typedef short sbit16; 1014e1bc9a0SAchim Leubner typedef int sbit32; 1024e1bc9a0SAchim Leubner typedef unsigned int BOOLEAN; 1034e1bc9a0SAchim Leubner typedef unsigned long long bit64; 1044e1bc9a0SAchim Leubner typedef long long sbit64; 1054e1bc9a0SAchim Leubner 1064e1bc9a0SAchim Leubner //typedef unsigned long long bitptr; 1074e1bc9a0SAchim Leubner #if 1 1084e1bc9a0SAchim Leubner #if (BITS_PER_LONG == 64) 1094e1bc9a0SAchim Leubner typedef unsigned long long bitptr; 1104e1bc9a0SAchim Leubner #else 1114e1bc9a0SAchim Leubner typedef unsigned long bitptr; 1124e1bc9a0SAchim Leubner #endif 1134e1bc9a0SAchim Leubner #endif 1144e1bc9a0SAchim Leubner 1154e1bc9a0SAchim Leubner typedef char S08; 1164e1bc9a0SAchim Leubner typedef short S16; 1174e1bc9a0SAchim Leubner typedef int S32; 1184e1bc9a0SAchim Leubner typedef long S32_64; 1194e1bc9a0SAchim Leubner typedef long long S64; 1204e1bc9a0SAchim Leubner 1214e1bc9a0SAchim Leubner typedef unsigned char U08; 1224e1bc9a0SAchim Leubner typedef unsigned short U16; 1234e1bc9a0SAchim Leubner typedef unsigned int U32; 1244e1bc9a0SAchim Leubner typedef unsigned long U32_64; 1254e1bc9a0SAchim Leubner typedef unsigned long long U64; 1264e1bc9a0SAchim Leubner 1274e1bc9a0SAchim Leubner /* 1284e1bc9a0SAchim Leubner ** some really basic defines 1294e1bc9a0SAchim Leubner */ 1304e1bc9a0SAchim Leubner #define GLOBAL extern 1314e1bc9a0SAchim Leubner #define LOCAL static 1324e1bc9a0SAchim Leubner #ifndef TRUE 1334e1bc9a0SAchim Leubner #define TRUE 1 1344e1bc9a0SAchim Leubner #define FALSE 0 1354e1bc9a0SAchim Leubner #endif 1364e1bc9a0SAchim Leubner #ifndef SUCCESS 1374e1bc9a0SAchim Leubner #define SUCCESS 0 1384e1bc9a0SAchim Leubner #define FAILURE 1 1394e1bc9a0SAchim Leubner #endif 1404e1bc9a0SAchim Leubner #ifndef NULL 1414e1bc9a0SAchim Leubner #define NULL ((void*)0) 1424e1bc9a0SAchim Leubner #endif 1434e1bc9a0SAchim Leubner 1444e1bc9a0SAchim Leubner 1454e1bc9a0SAchim Leubner #define agBOOLEAN BOOLEAN 1464e1bc9a0SAchim Leubner #define osGLOBAL GLOBAL 1474e1bc9a0SAchim Leubner #define osLOCAL LOCAL 1484e1bc9a0SAchim Leubner #define agTRUE TRUE 1494e1bc9a0SAchim Leubner #define agFALSE FALSE 1504e1bc9a0SAchim Leubner #define agNULL NULL 1514e1bc9a0SAchim Leubner 1524e1bc9a0SAchim Leubner #define AGTIAPI_UNKNOWN 2 1534e1bc9a0SAchim Leubner #define AGTIAPI_SUCCESS 1 1544e1bc9a0SAchim Leubner #define AGTIAPI_FAIL 0 1554e1bc9a0SAchim Leubner 1564e1bc9a0SAchim Leubner #define AGTIAPI_DRIVER_VERSION "1.4.0.10800" 1574e1bc9a0SAchim Leubner 1584e1bc9a0SAchim Leubner /*************************************************************************** 1594e1bc9a0SAchim Leubner **************************************************************************** 1604e1bc9a0SAchim Leubner * MACROS - some basic macros 1614e1bc9a0SAchim Leubner **************************************************************************** 1624e1bc9a0SAchim Leubner ***************************************************************************/ 1634e1bc9a0SAchim Leubner #ifndef BIT 1644e1bc9a0SAchim Leubner #define BIT(x) (1<<x) 1654e1bc9a0SAchim Leubner #endif 1664e1bc9a0SAchim Leubner 1674e1bc9a0SAchim Leubner #define osti_sprintf sprintf 1684e1bc9a0SAchim Leubner 1694e1bc9a0SAchim Leubner #endif /* __OSTYPES_H__ */ 170