1/******************************************************************************* 2*Copyright (c) 2014 PMC-Sierra, Inc. All rights reserved. 3* 4*Redistribution and use in source and binary forms, with or without modification, are permitted provided 5*that the following conditions are met: 6*1. Redistributions of source code must retain the above copyright notice, this list of conditions and the 7*following disclaimer. 8*2. Redistributions in binary form must reproduce the above copyright notice, 9*this list of conditions and the following disclaimer in the documentation and/or other materials provided 10*with the distribution. 11* 12*THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED 13*WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 14*FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 15*FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 16*NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 17*BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 18*LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 19*SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE 20* 21* $FreeBSD$ 22* 23*******************************************************************************/ 24/****************************************************************************** 25 26Note: 27******************************************************************************* 28Module Name: 29 ostypes.h 30Abstract: 31 Request by fclayer for data type define. 32Authors: 33 EW - Yiding(Eddie) Wang 34Environment: 35 Kernel or loadable module 36 37Version Control Information: 38 $ver. 1.0.0 39 40Revision History: 41 $Revision: 114125 $0.1.0 42 $Date: 2012-04-23 23:37:56 -0700 (Mon, 23 Apr 2012) $09-27-2001 43 $Modtime: 11/12/01 11:15a $15:56:00 44 45Notes: 46**************************** MODIFICATION HISTORY ***************************** 47NAME DATE Rev. DESCRIPTION 48---- ---- ---- ----------- 49EW 09-16-2002 0.1.0 Header file for most constant definitions 50******************************************************************************/ 51 52#ifndef __OSTYPES_H__ 53#define __OSTYPES_H__ 54 55#include <sys/types.h> 56#include <sys/kernel.h> 57 58 59/* 60** Included for Linux 2.4, built in kernel and other possible cases. 61*/ 62/* 63#ifdef TARGET_DRIVER 64#if !defined(AGBUILD_TFE_DRIVER) && !defined(COMBO_IBE_TFE_MODULE) 65#include "lxtgtdef.h" 66#endif 67#endif 68*/ 69/* 70** Included for possible lower layer ignorance. 71*/ 72#include "osdebug.h" 73 74#ifdef STATIC 75#undef STATIC 76#endif 77 78#define STATIC 79 80#ifndef INLINE 81#define INLINE inline 82#endif 83 84 85#ifndef FORCEINLINE 86#define FORCEINLINE 87//#define FORCEINLINE inline 88 89#endif 90#if defined (__amd64__) 91#define BITS_PER_LONG 64 92#else 93#define BITS_PER_LONG 32 94#endif 95 96 97typedef unsigned char bit8; 98typedef unsigned short bit16; 99typedef unsigned int bit32; 100typedef char sbit8; 101typedef short sbit16; 102typedef int sbit32; 103typedef unsigned int BOOLEAN; 104typedef unsigned long long bit64; 105typedef long long sbit64; 106 107//typedef unsigned long long bitptr; 108#if 1 109#if (BITS_PER_LONG == 64) 110typedef unsigned long long bitptr; 111#else 112typedef unsigned long bitptr; 113#endif 114#endif 115 116typedef char S08; 117typedef short S16; 118typedef int S32; 119typedef long S32_64; 120typedef long long S64; 121 122typedef unsigned char U08; 123typedef unsigned short U16; 124typedef unsigned int U32; 125typedef unsigned long U32_64; 126typedef unsigned long long U64; 127 128/* 129** some really basic defines 130*/ 131#define GLOBAL extern 132#define LOCAL static 133#ifndef TRUE 134#define TRUE 1 135#define FALSE 0 136#endif 137#ifndef SUCCESS 138#define SUCCESS 0 139#define FAILURE 1 140#endif 141#ifndef NULL 142#define NULL ((void*)0) 143#endif 144 145 146#define agBOOLEAN BOOLEAN 147#define osGLOBAL GLOBAL 148#define osLOCAL LOCAL 149#define agTRUE TRUE 150#define agFALSE FALSE 151#define agNULL NULL 152 153#define AGTIAPI_UNKNOWN 2 154#define AGTIAPI_SUCCESS 1 155#define AGTIAPI_FAIL 0 156 157#define AGTIAPI_DRIVER_VERSION "1.4.0.10800" 158 159/*************************************************************************** 160**************************************************************************** 161* MACROS - some basic macros 162**************************************************************************** 163***************************************************************************/ 164#ifndef BIT 165#define BIT(x) (1<<x) 166#endif 167 168#define osti_sprintf sprintf 169 170#endif /* __OSTYPES_H__ */ 171