Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/mpr/mpi/mpi2_targ.h
/*- | /*- | ||||
* Copyright (c) 2012-2015 LSI Corp. | * Copyright (c) 2012-2015 LSI Corp. | ||||
* Copyright (c) 2013-2015 Avago Technologies | * Copyright (c) 2013-2016 Avago Technologies | ||||
* All rights reserved. | * All rights reserved. | ||||
* | * | ||||
* Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | ||||
* modification, are permitted provided that the following conditions | * modification, are permitted provided that the following conditions | ||||
* are met: | * are met: | ||||
* 1. Redistributions of source code must retain the above copyright | * 1. Redistributions of source code must retain the above copyright | ||||
* notice, this list of conditions and the following disclaimer. | * notice, this list of conditions and the following disclaimer. | ||||
* 2. Redistributions in binary form must reproduce the above copyright | * 2. Redistributions in binary form must reproduce the above copyright | ||||
Show All 17 Lines | |||||
* | * | ||||
* Avago Technologies (LSI) MPT-Fusion Host Adapter FreeBSD | * Avago Technologies (LSI) MPT-Fusion Host Adapter FreeBSD | ||||
* | * | ||||
* $FreeBSD$ | * $FreeBSD$ | ||||
*/ | */ | ||||
/* | /* | ||||
* Copyright (c) 2000-2015 LSI Corporation. | * Copyright (c) 2000-2015 LSI Corporation. | ||||
* Copyright (c) 2013-2015 Avago Technologies | * Copyright (c) 2013-2016 Avago Technologies | ||||
* All rights reserved. | |||||
* | * | ||||
* | * | ||||
* Name: mpi2_targ.h | * Name: mpi2_targ.h | ||||
* Title: MPI Target mode messages and structures | * Title: MPI Target mode messages and structures | ||||
* Creation Date: September 8, 2006 | * Creation Date: September 8, 2006 | ||||
* | * | ||||
* mpi2_targ.h Version: 02.00.06 | * mpi2_targ.h Version: 02.00.09 | ||||
* | * | ||||
* NOTE: Names (typedefs, defines, etc.) beginning with an MPI25 or Mpi25 | * NOTE: Names (typedefs, defines, etc.) beginning with an MPI25 or Mpi25 | ||||
* prefix are for use only on MPI v2.5 products, and must not be used | * prefix are for use only on MPI v2.5 products, and must not be used | ||||
* with MPI v2.0 products. Unless otherwise noted, names beginning with | * with MPI v2.0 products. Unless otherwise noted, names beginning with | ||||
* MPI2 or Mpi2 are for use with both MPI v2.0 and MPI v2.5 products. | * MPI2 or Mpi2 are for use with both MPI v2.0 and MPI v2.5 products. | ||||
* | * | ||||
* Version History | * Version History | ||||
* --------------- | * --------------- | ||||
Show All 9 Lines | |||||
* Target Status Send Request only takes a single SGE for | * Target Status Send Request only takes a single SGE for | ||||
* response data. | * response data. | ||||
* 02-10-10 02.00.04 Added comment to MPI2_TARGET_SSP_RSP_IU structure. | * 02-10-10 02.00.04 Added comment to MPI2_TARGET_SSP_RSP_IU structure. | ||||
* 11-18-11 02.00.05 Incorporating additions for MPI v2.5. | * 11-18-11 02.00.05 Incorporating additions for MPI v2.5. | ||||
* 11-27-12 02.00.06 Added InitiatorDevHandle field to MPI2_TARGET_MODE_ABORT | * 11-27-12 02.00.06 Added InitiatorDevHandle field to MPI2_TARGET_MODE_ABORT | ||||
* request message structure. | * request message structure. | ||||
* Added AbortType MPI2_TARGET_MODE_ABORT_DEVHANDLE and | * Added AbortType MPI2_TARGET_MODE_ABORT_DEVHANDLE and | ||||
* MPI2_TARGET_MODE_ABORT_ALL_COMMANDS. | * MPI2_TARGET_MODE_ABORT_ALL_COMMANDS. | ||||
* 06-13-14 02.00.07 Added MinMSIxIndex and MaxMSIxIndex fields to | |||||
* MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST. | |||||
* 11-18-14 02.00.08 Updated copyright information. | |||||
* 03-16-15 02.00.09 Updated for MPI v2.6. | |||||
* Added MPI26_TARGET_ASSIST_IOFLAGS_ESCAPE_PASSTHROUGH. | |||||
* -------------------------------------------------------------------------- | * -------------------------------------------------------------------------- | ||||
*/ | */ | ||||
#ifndef MPI2_TARG_H | #ifndef MPI2_TARG_H | ||||
#define MPI2_TARG_H | #define MPI2_TARG_H | ||||
/****************************************************************************** | /****************************************************************************** | ||||
Show All 15 Lines | typedef struct _MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST | ||||
U16 TotalCmdBuffers; /* 0x04 */ | U16 TotalCmdBuffers; /* 0x04 */ | ||||
U8 Reserved; /* 0x06 */ | U8 Reserved; /* 0x06 */ | ||||
U8 MsgFlags; /* 0x07 */ | U8 MsgFlags; /* 0x07 */ | ||||
U8 VP_ID; /* 0x08 */ | U8 VP_ID; /* 0x08 */ | ||||
U8 VF_ID; /* 0x09 */ | U8 VF_ID; /* 0x09 */ | ||||
U16 Reserved2; /* 0x0A */ | U16 Reserved2; /* 0x0A */ | ||||
U32 Reserved3; /* 0x0C */ | U32 Reserved3; /* 0x0C */ | ||||
U16 CmdBufferLength; /* 0x10 */ | U16 CmdBufferLength; /* 0x10 */ | ||||
U16 Reserved4; /* 0x12 */ | U8 MinMSIxIndex; /* 0x12 */ /* MPI 2.5 and newer only; Reserved in MPI 2.0 */ | ||||
U8 MaxMSIxIndex; /* 0x13 */ /* MPI 2.5 and newer only; Reserved in MPI 2.0 */ | |||||
U32 BaseAddressLow; /* 0x14 */ | U32 BaseAddressLow; /* 0x14 */ | ||||
U32 BaseAddressHigh; /* 0x18 */ | U32 BaseAddressHigh; /* 0x18 */ | ||||
} MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST, | } MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST, | ||||
MPI2_POINTER PTR_MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST, | MPI2_POINTER PTR_MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST, | ||||
Mpi2TargetCmdBufferPostBaseRequest_t, | Mpi2TargetCmdBufferPostBaseRequest_t, | ||||
MPI2_POINTER pMpi2TargetCmdBufferPostBaseRequest_t; | MPI2_POINTER pMpi2TargetCmdBufferPostBaseRequest_t; | ||||
/* values for the BufferPostflags field */ | /* values for the BufferPostflags field */ | ||||
#define MPI2_CMD_BUF_POST_BASE_ADDRESS_SPACE_MASK (0x0C) | #define MPI2_CMD_BUF_POST_BASE_ADDRESS_SPACE_MASK (0x0C) | ||||
#define MPI2_CMD_BUF_POST_BASE_SYSTEM_ADDRESS_SPACE (0x00) | #define MPI2_CMD_BUF_POST_BASE_SYSTEM_ADDRESS_SPACE (0x00) | ||||
#define MPI2_CMD_BUF_POST_BASE_IOCDDR_ADDRESS_SPACE (0x04) | #define MPI2_CMD_BUF_POST_BASE_IOCDDR_ADDRESS_SPACE (0x04) | ||||
#define MPI2_CMD_BUF_POST_BASE_IOCPLB_ADDRESS_SPACE (0x08) | #define MPI2_CMD_BUF_POST_BASE_IOCPLB_ADDRESS_SPACE (0x08) /* only for MPI v2.5 and earlier */ | ||||
#define MPI2_CMD_BUF_POST_BASE_IOCPLBNTA_ADDRESS_SPACE (0x0C) | #define MPI26_CMD_BUF_POST_BASE_IOCCTL_ADDRESS_SPACE (0x08) /* for MPI v2.6 only */ | ||||
#define MPI2_CMD_BUF_POST_BASE_IOCPLBNTA_ADDRESS_SPACE (0x0C) /* only for MPI v2.5 and earlier */ | |||||
#define MPI2_CMD_BUF_POST_BASE_FLAGS_AUTO_POST_ALL (0x01) | #define MPI2_CMD_BUF_POST_BASE_FLAGS_AUTO_POST_ALL (0x01) | ||||
/**************************************************************************** | /**************************************************************************** | ||||
* Target Command Buffer Post List Request | * Target Command Buffer Post List Request | ||||
****************************************************************************/ | ****************************************************************************/ | ||||
▲ Show 20 Lines • Show All 278 Lines • ▼ Show 20 Lines | |||||
#define MPI25_TA_DMAFLAGS_OP_D_H_D_D (0x0A) | #define MPI25_TA_DMAFLAGS_OP_D_H_D_D (0x0A) | ||||
#define MPI25_TA_DMAFLAGS_OP_D_H_D_C (0x0B) | #define MPI25_TA_DMAFLAGS_OP_D_H_D_C (0x0B) | ||||
#define MPI25_TA_DMAFLAGS_OP_D_H_D_I (0x0C) | #define MPI25_TA_DMAFLAGS_OP_D_H_D_I (0x0C) | ||||
#define MPI25_TA_DMAFLAGS_OP_D_H_C_C (0x0D) | #define MPI25_TA_DMAFLAGS_OP_D_H_C_C (0x0D) | ||||
#define MPI25_TA_DMAFLAGS_OP_D_H_C_I (0x0E) | #define MPI25_TA_DMAFLAGS_OP_D_H_C_I (0x0E) | ||||
#define MPI25_TA_DMAFLAGS_OP_D_H_I_I (0x0F) | #define MPI25_TA_DMAFLAGS_OP_D_H_I_I (0x0F) | ||||
/* defines for the IoFlags field */ | /* defines for the IoFlags field */ | ||||
#define MPI26_TARGET_ASSIST_IOFLAGS_ESCAPE_PASSTHROUGH (0x2000) /* MPI v2.6 and later */ | |||||
#define MPI25_TARGET_ASSIST_IOFLAGS_BIDIRECTIONAL (0x0800) | #define MPI25_TARGET_ASSIST_IOFLAGS_BIDIRECTIONAL (0x0800) | ||||
#define MPI25_TARGET_ASSIST_IOFLAGS_RECEIVE_FIRST (0x0200) | #define MPI25_TARGET_ASSIST_IOFLAGS_RECEIVE_FIRST (0x0200) | ||||
/* defines for the EEDPFlags field */ | /* defines for the EEDPFlags field */ | ||||
#define MPI25_TA_EEDPFLAGS_INC_PRI_REFTAG (0x8000) | #define MPI25_TA_EEDPFLAGS_INC_PRI_REFTAG (0x8000) | ||||
#define MPI25_TA_EEDPFLAGS_INC_SEC_REFTAG (0x4000) | #define MPI25_TA_EEDPFLAGS_INC_SEC_REFTAG (0x4000) | ||||
#define MPI25_TA_EEDPFLAGS_INC_PRI_APPTAG (0x2000) | #define MPI25_TA_EEDPFLAGS_INC_PRI_APPTAG (0x2000) | ||||
#define MPI25_TA_EEDPFLAGS_INC_SEC_APPTAG (0x1000) | #define MPI25_TA_EEDPFLAGS_INC_SEC_APPTAG (0x1000) | ||||
▲ Show 20 Lines • Show All 186 Lines • Show Last 20 Lines |