mpi_type.h revision 101704
1/* $FreeBSD: head/sys/dev/mpt/mpilib/mpi_type.h 101704 2002-08-11 23:34:20Z mjacob $ */
2/*
3 *  Copyright (c) 2000-2001 LSI Logic Corporation.
4 *
5 *
6 *           Name:  MPI_TYPE.H
7 *          Title:  MPI Basic type definitions
8 *  Creation Date:  June 6, 2000
9 *
10 *    MPI Version:  01.02.01
11 *
12 *  Version History
13 *  ---------------
14 *
15 *  Date      Version   Description
16 *  --------  --------  ------------------------------------------------------
17 *  05-08-00  00.10.01  Original release for 0.10 spec dated 4/26/2000.
18 *  06-06-00  01.00.01  Update version number for 1.0 release.
19 *  11-02-00  01.01.01  Original release for post 1.0 work
20 *  02-20-01  01.01.02  Added define and ifdef for MPI_POINTER.
21 *  08-08-01  01.02.01  Original release for v1.2 work.
22 *  --------------------------------------------------------------------------
23 */
24
25#ifndef MPI_TYPE_H
26#define MPI_TYPE_H
27
28
29/*******************************************************************************
30 * Define MPI_POINTER if it hasn't already been defined. By default MPI_POINTER
31 * is defined to be a near pointer. MPI_POINTER can be defined as a far pointer
32 * by defining MPI_POINTER as "far *" before this header file is included.
33 */
34#ifndef MPI_POINTER
35#define MPI_POINTER     *
36#endif
37
38
39/*****************************************************************************
40*
41*               B a s i c    T y p e s
42*
43*****************************************************************************/
44
45typedef signed   char   S8;
46typedef unsigned char   U8;
47typedef signed   short  S16;
48typedef unsigned short  U16;
49
50#if defined(unix) || defined(__arm) || defined(ALPHA) || defined(__GNUC__)
51
52    typedef signed   int   S32;
53    typedef unsigned int   U32;
54
55#else
56
57    typedef signed   long  S32;
58    typedef unsigned long  U32;
59
60#endif
61
62
63typedef struct _S64
64{
65    U32          Low;
66    S32          High;
67} S64;
68
69typedef struct _U64
70{
71    U32          Low;
72    U32          High;
73} U64;
74
75
76/****************************************************************************/
77/*  Pointers                                                                */
78/****************************************************************************/
79
80typedef S8      *PS8;
81typedef U8      *PU8;
82typedef S16     *PS16;
83typedef U16     *PU16;
84typedef S32     *PS32;
85typedef U32     *PU32;
86typedef S64     *PS64;
87typedef U64     *PU64;
88
89
90#endif
91
92