11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * Copyright (c) 2013 LSI Corp.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * All rights reserved.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * Redistribution and use in source and binary forms, with or without
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * modification, are permitted provided that the following conditions
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 1. Redistributions of source code must retain the above copyright
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * notice, this list of conditions and the following disclaimer.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 2. Redistributions in binary form must reproduce the above copyright
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * notice, this list of conditions and the following disclaimer in the
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * documentation and/or other materials provided with the distribution.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 3. Neither the name of the author nor the names of any co-contributors
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * may be used to endorse or promote products derived from this software
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * without specific prior written permission.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * SUCH DAMAGE.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * Copyright (c) 2000-2013 LSI Corporation.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Title: MPI diagnostic tool structures and definitions
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Creation Date: March 26, 2007
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * mpi2_tool.h Version: 02.00.11
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Version History
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * ---------------
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Date Version Description
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * -------- -------- ------------------------------------------------------
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * 12-18-07 02.00.01 Added Diagnostic Buffer Post and Diagnostic Release
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * structures and defines.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * 02-29-08 02.00.02 Modified various names to make them 32-character unique.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * 05-06-09 02.00.03 Added ISTWI Read Write Tool and Diagnostic CLI Tool.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * 07-30-09 02.00.04 Added ExtendedType field to DiagnosticBufferPost request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * and reply messages.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Added MPI2_DIAG_BUF_TYPE_EXTENDED.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * Incremented MPI2_DIAG_BUF_TYPE_COUNT.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 05-12-10 02.00.05 Added Diagnostic Data Upload tool.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 08-11-10 02.00.06 Added defines that were missing for Diagnostic Buffer
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * Post Request.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 05-25-11 02.00.07 Added Flags field and related defines to
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * MPI2_TOOLBOX_ISTWI_READ_WRITE_REQUEST.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 11-18-11 02.00.08 Incorporating additions for MPI v2.5.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 07-10-12 02.00.09 Add MPI v2.5 Toolbox Diagnostic CLI Tool Request
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 07-26-12 02.00.10 Modified MPI2_TOOLBOX_DIAGNOSTIC_CLI_REQUEST so that
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * it uses MPI Chain SGE as well as MPI Simple SGE.
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles * 08-19-13 02.00.11 Added MPI2_TOOLBOX_TEXT_DISPLAY_TOOL and related info.
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada * --------------------------------------------------------------------------
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/*****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox Messages
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada*****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* defines for the Tools */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox reply
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_TOOLBOX_REPLY, MPI2_POINTER PTR_MPI2_TOOLBOX_REPLY,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox Clean Tool request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada } MPI2_TOOLBOX_CLEAN_REQUEST, MPI2_POINTER PTR_MPI2_TOOLBOX_CLEAN_REQUEST,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2ToolboxCleanRequest_t, MPI2_POINTER pMpi2ToolboxCleanRequest_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* values for the Flags field */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada#define MPI2_TOOLBOX_CLEAN_PERSIST_MANUFACT_PAGES (0x40000000)
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada#define MPI2_TOOLBOX_CLEAN_OTHER_PERSIST_PAGES (0x20000000)
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox Memory Move request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_TOOLBOX_MEM_MOVE_REQUEST, MPI2_POINTER PTR_MPI2_TOOLBOX_MEM_MOVE_REQUEST,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2ToolboxMemMoveRequest_t, MPI2_POINTER pMpi2ToolboxMemMoveRequest_t;
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/****************************************************************************
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles* Toolbox Diagnostic Data Upload request
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles****************************************************************************/
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Gilestypedef struct _MPI2_TOOLBOX_DIAG_DATA_UPLOAD_REQUEST
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles MPI2_POINTER PTR_MPI2_TOOLBOX_DIAG_DATA_UPLOAD_REQUEST,
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles MPI2_POINTER pMpi2ToolboxDiagDataUploadRequest_t;
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* use MPI2_SGLFLAGS_ defines from mpi2.h for the SGLFlags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles} MPI2_DIAG_DATA_UPLOAD_HEADER, MPI2_POINTER PTR_MPI2_DIAG_DATA_UPLOAD_HEADER,
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles Mpi2DiagDataUploadHeader_t, MPI2_POINTER pMpi2DiagDataUploadHeader_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox ISTWI Read Write Tool
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* Toolbox ISTWI Read Write Tool request message */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* values for the Action field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* use MPI2_SGLFLAGS_ defines from mpi2.h for the SGLFlags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* values for the Flags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles#define MPI2_TOOL_ISTWI_FLAG_AUTO_RESERVE_RELEASE (0x80)
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles#define MPI2_TOOL_ISTWI_FLAG_PAGE_ADDR_MASK (0x07)
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* Toolbox ISTWI Read Write Tool reply message */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_TOOLBOX_ISTWI_REPLY, MPI2_POINTER PTR_MPI2_TOOLBOX_ISTWI_REPLY,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2ToolboxIstwiReply_t, MPI2_POINTER pMpi2ToolboxIstwiReply_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox Beacon Tool request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_TOOLBOX_BEACON_REQUEST, MPI2_POINTER PTR_MPI2_TOOLBOX_BEACON_REQUEST,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2ToolboxBeaconRequest_t, MPI2_POINTER pMpi2ToolboxBeaconRequest_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* values for the Flags field */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Toolbox Diagnostic CLI Tool
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* MPI v2.0 Toolbox Diagnostic CLI Tool request message */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada U8 DiagnosticCliCommand[MPI2_TOOLBOX_DIAG_CLI_CMD_LENGTH]; /* 0x14 */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* use MPI2_SGLFLAGS_ defines from mpi2.h for the SGLFlags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* MPI v2.5 Toolbox Diagnostic CLI Tool request message */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Gilestypedef struct _MPI25_TOOLBOX_DIAGNOSTIC_CLI_REQUEST
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles U8 DiagnosticCliCommand[MPI2_TOOLBOX_DIAG_CLI_CMD_LENGTH]; /* 0x14 */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles MPI2_POINTER PTR_MPI25_TOOLBOX_DIAGNOSTIC_CLI_REQUEST,
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles MPI2_POINTER pMpi25ToolboxDiagnosticCliRequest_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* Toolbox Diagnostic CLI Tool reply message */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/****************************************************************************
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles* Toolbox Console Text Display Tool
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles****************************************************************************/
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* Toolbox Console Text Display Tool request message */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles U8 TextToDisplay[4]; /* 0x10 */ /* actual length determined at runtime based on frame size */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles MPI2_POINTER PTR_MPI2_TOOLBOX_TEXT_DISPLAY_REQUEST,
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* defines for the Console field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* defines for the Flags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles#define MPI2_TOOLBOX_CONSOLE_FLAG_TIMESTAMP (0x01)
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/*****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Diagnostic Buffer Messages
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada*****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Diagnostic Buffer Post request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_DIAG_BUFFER_POST_REQUEST, MPI2_POINTER PTR_MPI2_DIAG_BUFFER_POST_REQUEST,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2DiagBufferPostRequest_t, MPI2_POINTER pMpi2DiagBufferPostRequest_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* values for the ExtendedType field */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* values for the BufferType field */
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/* count of the number of buffer types */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles/* values for the Flags field */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles#define MPI2_DIAG_BUF_FLAG_RELEASE_ON_FULL (0x00000002) /* for MPI v2.0 products only */
11cb6ef00e4913c161e88403c11c037fb2afab44Andy Giles#define MPI2_DIAG_BUF_FLAG_IMMEDIATE_RELEASE (0x00000001)
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Diagnostic Buffer Post reply
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_DIAG_BUFFER_POST_REPLY, MPI2_POINTER PTR_MPI2_DIAG_BUFFER_POST_REPLY,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2DiagBufferPostReply_t, MPI2_POINTER pMpi2DiagBufferPostReply_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Diagnostic Release request
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_DIAG_RELEASE_REQUEST, MPI2_POINTER PTR_MPI2_DIAG_RELEASE_REQUEST,
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada Mpi2DiagReleaseRequest_t, MPI2_POINTER pMpi2DiagReleaseRequest_t;
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada/****************************************************************************
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada* Diagnostic Buffer Post reply
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada****************************************************************************/
76a4caf6c7b8f1c35d80a77bd8005aeae6197786Ada} MPI2_DIAG_RELEASE_REPLY, MPI2_POINTER PTR_MPI2_DIAG_RELEASE_REPLY,