1265236Sken/*- 2265236Sken * Copyright (c) 2013 LSI Corp. 3265236Sken * All rights reserved. 4265236Sken * 5265236Sken * Redistribution and use in source and binary forms, with or without 6265236Sken * modification, are permitted provided that the following conditions 7265236Sken * are met: 8265236Sken * 1. Redistributions of source code must retain the above copyright 9265236Sken * notice, this list of conditions and the following disclaimer. 10265236Sken * 2. Redistributions in binary form must reproduce the above copyright 11265236Sken * notice, this list of conditions and the following disclaimer in the 12265236Sken * documentation and/or other materials provided with the distribution. 13265236Sken * 3. Neither the name of the author nor the names of any co-contributors 14265236Sken * may be used to endorse or promote products derived from this software 15265236Sken * without specific prior written permission. 16265236Sken * 17265236Sken * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18265236Sken * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19265236Sken * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20265236Sken * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 21265236Sken * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22265236Sken * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23265236Sken * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24265236Sken * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25265236Sken * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26265236Sken * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27265236Sken * SUCH DAMAGE. 28265236Sken * 29265236Sken * LSI MPT-Fusion Host Adapter FreeBSD 30265236Sken * 31265236Sken * $FreeBSD$ 32265236Sken */ 33265236Sken 34265236Sken/* 35265236Sken * Copyright (c) 2000-2007 LSI Corporation. 36265236Sken * 37265236Sken * 38265236Sken * Name: mpi2_type.h 39265236Sken * Title: MPI basic type definitions 40265236Sken * Creation Date: August 16, 2006 41265236Sken * 42265236Sken * mpi2_type.h Version: 02.00.00 43265236Sken * 44265236Sken * Version History 45265236Sken * --------------- 46265236Sken * 47265236Sken * Date Version Description 48265236Sken * -------- -------- ------------------------------------------------------ 49265236Sken * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 50265236Sken * -------------------------------------------------------------------------- 51265236Sken */ 52265236Sken 53265236Sken#ifndef MPI2_TYPE_H 54265236Sken#define MPI2_TYPE_H 55265236Sken 56265236Sken 57265236Sken/******************************************************************************* 58265236Sken * Define MPI2_POINTER if it hasn't already been defined. By default 59265236Sken * MPI2_POINTER is defined to be a near pointer. MPI2_POINTER can be defined as 60265236Sken * a far pointer by defining MPI2_POINTER as "far *" before this header file is 61265236Sken * included. 62265236Sken */ 63265236Sken#ifndef MPI2_POINTER 64265236Sken#define MPI2_POINTER * 65265236Sken#endif 66265236Sken 67265236Sken/* the basic types may have already been included by mpi_type.h */ 68265236Sken#ifndef MPI_TYPE_H 69265236Sken/***************************************************************************** 70265236Sken* 71265236Sken* Basic Types 72265236Sken* 73265236Sken*****************************************************************************/ 74265236Sken 75265236Skentypedef signed char S8; 76265236Skentypedef unsigned char U8; 77265236Skentypedef signed short S16; 78265236Skentypedef unsigned short U16; 79265236Sken 80265236Sken#ifdef __FreeBSD__ 81265236Sken 82265236Skentypedef int32_t S32; 83265236Skentypedef uint32_t U32; 84265236Sken 85265236Sken#else 86265236Sken 87265236Sken#if defined(unix) || defined(__arm) || defined(ALPHA) || defined(__PPC__) || defined(__ppc) 88265236Sken 89265236Sken typedef signed int S32; 90265236Sken typedef unsigned int U32; 91265236Sken 92265236Sken#else 93265236Sken 94265236Sken typedef signed long S32; 95265236Sken typedef unsigned long U32; 96265236Sken 97265236Sken#endif 98265236Sken#endif 99265236Sken 100265236Skentypedef struct _S64 101265236Sken{ 102265236Sken U32 Low; 103265236Sken S32 High; 104265236Sken} S64; 105265236Sken 106265236Skentypedef struct _U64 107265236Sken{ 108265236Sken U32 Low; 109265236Sken U32 High; 110265236Sken} U64; 111265236Sken 112265236Sken 113265236Sken/***************************************************************************** 114265236Sken* 115265236Sken* Pointer Types 116265236Sken* 117265236Sken*****************************************************************************/ 118265236Sken 119265236Skentypedef S8 *PS8; 120265236Skentypedef U8 *PU8; 121265236Skentypedef S16 *PS16; 122265236Skentypedef U16 *PU16; 123265236Skentypedef S32 *PS32; 124265236Skentypedef U32 *PU32; 125265236Skentypedef S64 *PS64; 126265236Skentypedef U64 *PU64; 127265236Sken 128265236Sken#endif 129265236Sken 130265236Sken#endif 131265236Sken 132