1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *  Copyright (c) 2000-2008 LSI Corporation.
4  *
5  *
6  *           Name:  mpi_type.h
7  *          Title:  MPI Basic type definitions
8  *  Creation Date:  June 6, 2000
9  *
10  *    mpi_type.h Version:  01.05.02
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  *  05-11-04  01.03.01  Original release for MPI v1.3.
23  *  08-19-04  01.05.01  Original release for MPI v1.5.
24  *  --------------------------------------------------------------------------
25  */
26 
27 #ifndef MPI_TYPE_H
28 #define MPI_TYPE_H
29 
30 
31 /*******************************************************************************
32  * Define MPI_POINTER if it hasn't already been defined. By default MPI_POINTER
33  * is defined to be a near pointer. MPI_POINTER can be defined as a far pointer
34  * by defining MPI_POINTER as "far *" before this header file is included.
35  */
36 #ifndef MPI_POINTER
37 #define MPI_POINTER     *
38 #endif
39 
40 
41 /*****************************************************************************
42 *
43 *               B a s i c    T y p e s
44 *
45 *****************************************************************************/
46 
47 typedef signed   char   S8;
48 typedef unsigned char   U8;
49 typedef signed   short  S16;
50 typedef unsigned short  U16;
51 
52 
53 typedef int32_t   S32;
54 typedef u_int32_t U32;
55 
56 typedef struct _S64
57 {
58     U32          Low;
59     S32          High;
60 } S64;
61 
62 typedef struct _U64
63 {
64     U32          Low;
65     U32          High;
66 } U64;
67 
68 
69 /****************************************************************************/
70 /*  Pointers                                                                */
71 /****************************************************************************/
72 
73 typedef S8      *PS8;
74 typedef U8      *PU8;
75 typedef S16     *PS16;
76 typedef U16     *PU16;
77 typedef S32     *PS32;
78 typedef U32     *PU32;
79 typedef S64     *PS64;
80 typedef U64     *PU64;
81 
82 
83 #endif
84 
85