1/*- 2 * Copyright (c) 2013 LSI Corp. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of the author nor the names of any co-contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 */ 29 30 ============================== 31 Fusion-MPT MPI 2.0 / 2.5 Header File Change History 32 ============================== 33 34 Copyright (c) 2000-2013 LSI Corporation. 35 36 --------------------------------------- 37 Header Set Release Version: 02.00.33 38 Header Set Release Date: 12-05-13 39 --------------------------------------- 40 41 Filename Current version Prior version 42 ---------- --------------- ------------- 43 mpi2.h 02.00.33 02.00.32 44 mpi2_cnfg.h 02.00.27 02.00.26 45 mpi2_init.h 02.00.15 02.00.15 46 mpi2_ioc.h 02.00.24 02.00.23 47 mpi2_raid.h 02.00.10 02.00.10 48 mpi2_sas.h 02.00.08 02.00.08 49 mpi2_targ.h 02.00.06 02.00.06 50 mpi2_tool.h 02.00.11 02.00.11 51 mpi2_type.h 02.00.00 02.00.00 52 mpi2_ra.h 02.00.00 02.00.00 53 mpi2_hbd.h 02.00.02 02.00.02 54 mpi2_history.txt 02.00.33 02.00.32 55 56 57 * Date Version Description 58 * -------- -------- ------------------------------------------------------ 59 60mpi2.h 61 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 62 * 06-04-07 02.00.01 Bumped MPI2_HEADER_VERSION_UNIT. 63 * 06-26-07 02.00.02 Bumped MPI2_HEADER_VERSION_UNIT. 64 * 08-31-07 02.00.03 Bumped MPI2_HEADER_VERSION_UNIT. 65 * Moved ReplyPostHostIndex register to offset 0x6C of the 66 * MPI2_SYSTEM_INTERFACE_REGS and modified the define for 67 * MPI2_REPLY_POST_HOST_INDEX_OFFSET. 68 * Added union of request descriptors. 69 * Added union of reply descriptors. 70 * 10-31-07 02.00.04 Bumped MPI2_HEADER_VERSION_UNIT. 71 * Added define for MPI2_VERSION_02_00. 72 * Fixed the size of the FunctionDependent5 field in the 73 * MPI2_DEFAULT_REPLY structure. 74 * 12-18-07 02.00.05 Bumped MPI2_HEADER_VERSION_UNIT. 75 * Removed the MPI-defined Fault Codes and extended the 76 * product specific codes up to 0xEFFF. 77 * Added a sixth key value for the WriteSequence register 78 * and changed the flush value to 0x0. 79 * Added message function codes for Diagnostic Buffer Post 80 * and Diagnsotic Release. 81 * New IOCStatus define: MPI2_IOCSTATUS_DIAGNOSTIC_RELEASED 82 * Moved MPI2_VERSION_UNION from mpi2_ioc.h. 83 * 02-29-08 02.00.06 Bumped MPI2_HEADER_VERSION_UNIT. 84 * 03-03-08 02.00.07 Bumped MPI2_HEADER_VERSION_UNIT. 85 * 05-21-08 02.00.08 Bumped MPI2_HEADER_VERSION_UNIT. 86 * Added #defines for marking a reply descriptor as unused. 87 * 06-27-08 02.00.09 Bumped MPI2_HEADER_VERSION_UNIT. 88 * 10-02-08 02.00.10 Bumped MPI2_HEADER_VERSION_UNIT. 89 * Moved LUN field defines from mpi2_init.h. 90 * 01-19-09 02.00.11 Bumped MPI2_HEADER_VERSION_UNIT. 91 * 05-06-09 02.00.12 Bumped MPI2_HEADER_VERSION_UNIT. 92 * In all request and reply descriptors, replaced VF_ID 93 * field with MSIxIndex field. 94 * Removed DevHandle field from 95 * MPI2_SCSI_IO_SUCCESS_REPLY_DESCRIPTOR and made those 96 * bytes reserved. 97 * Added RAID Accelerator functionality. 98 * 07-30-09 02.00.13 Bumped MPI2_HEADER_VERSION_UNIT. 99 * 10-28-09 02.00.14 Bumped MPI2_HEADER_VERSION_UNIT. 100 * Added MSI-x index mask and shift for Reply Post Host 101 * Index register. 102 * Added function code for Host Based Discovery Action. 103 * 02-10-10 02.00.15 Bumped MPI2_HEADER_VERSION_UNIT. 104 * Added define for MPI2_FUNCTION_PWR_MGMT_CONTROL. 105 * Added defines for product-specific range of message 106 * function codes, 0xF0 to 0xFF. 107 * 05-12-10 02.00.16 Bumped MPI2_HEADER_VERSION_UNIT. 108 * Added alternative defines for the SGE Direction bit. 109 * 08-11-10 02.00.17 Bumped MPI2_HEADER_VERSION_UNIT. 110 * 11-10-10 02.00.18 Bumped MPI2_HEADER_VERSION_UNIT. 111 * Added MPI2_IEEE_SGE_FLAGS_SYSTEMPLBCPI_ADDR define. 112 * 02-23-11 02.00.19 Bumped MPI2_HEADER_VERSION_UNIT. 113 * Added MPI2_FUNCTION_SEND_HOST_MESSAGE. 114 * 03-09-11 02.00.20 Bumped MPI2_HEADER_VERSION_UNIT. 115 * 05-25-11 02.00.21 Bumped MPI2_HEADER_VERSION_UNIT. 116 * 08-24-11 02.00.22 Bumped MPI2_HEADER_VERSION_UNIT. 117 * 11-18-11 02.00.23 Bumped MPI2_HEADER_VERSION_UNIT. 118 * Incorporating additions for MPI v2.5. 119 * 02-06-12 02.00.24 Bumped MPI2_HEADER_VERSION_UNIT. 120 * 03-29-12 02.00.25 Bumped MPI2_HEADER_VERSION_UNIT. 121 * Added Hard Reset delay timings. 122 * 07-10-12 02.00.26 Bumped MPI2_HEADER_VERSION_UNIT. 123 * 07-26-12 02.00.27 Bumped MPI2_HEADER_VERSION_UNIT. 124 * 11-27-12 02.00.28 Bumped MPI2_HEADER_VERSION_UNIT. 125 * 12-20-12 02.00.29 Bumped MPI2_HEADER_VERSION_UNIT. 126 * Added MPI25_SUP_REPLY_POST_HOST_INDEX_OFFSET. 127 * 04-09-13 02.00.30 Bumped MPI2_HEADER_VERSION_UNIT. 128 * 04-17-13 02.00.31 Bumped MPI2_HEADER_VERSION_UNIT. 129 * 08-19-13 02.00.32 Bumped MPI2_HEADER_VERSION_UNIT. 130 * 12-05-13 02.00.33 Bumped MPI2_HEADER_VERSION_UNIT. 131 * -------------------------------------------------------------------------- 132 133mpi2_cnfg.h 134 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 135 * 06-04-07 02.00.01 Added defines for SAS IO Unit Page 2 PhyFlags. 136 * Added Manufacturing Page 11. 137 * Added MPI2_SAS_EXPANDER0_FLAGS_CONNECTOR_END_DEVICE 138 * define. 139 * 06-26-07 02.00.02 Adding generic structure for product-specific 140 * Manufacturing pages: MPI2_CONFIG_PAGE_MANUFACTURING_PS. 141 * Rework of BIOS Page 2 configuration page. 142 * Fixed MPI2_BIOSPAGE2_BOOT_DEVICE to be a union of the 143 * forms. 144 * Added configuration pages IOC Page 8 and Driver 145 * Persistent Mapping Page 0. 146 * 08-31-07 02.00.03 Modified configuration pages dealing with Integrated 147 * RAID (Manufacturing Page 4, RAID Volume Pages 0 and 1, 148 * RAID Physical Disk Pages 0 and 1, RAID Configuration 149 * Page 0). 150 * Added new value for AccessStatus field of SAS Device 151 * Page 0 (_SATA_NEEDS_INITIALIZATION). 152 * 10-31-07 02.00.04 Added missing SEPDevHandle field to 153 * MPI2_CONFIG_PAGE_SAS_ENCLOSURE_0. 154 * 12-18-07 02.00.05 Modified IO Unit Page 0 to use 32-bit version fields for 155 * NVDATA. 156 * Modified IOC Page 7 to use masks and added field for 157 * SASBroadcastPrimitiveMasks. 158 * Added MPI2_CONFIG_PAGE_BIOS_4. 159 * Added MPI2_CONFIG_PAGE_LOG_0. 160 * 02-29-08 02.00.06 Modified various names to make them 32-character unique. 161 * Added SAS Device IDs. 162 * Updated Integrated RAID configuration pages including 163 * Manufacturing Page 4, IOC Page 6, and RAID Configuration 164 * Page 0. 165 * 05-21-08 02.00.07 Added define MPI2_MANPAGE4_MIX_SSD_SAS_SATA. 166 * Added define MPI2_MANPAGE4_PHYSDISK_128MB_COERCION. 167 * Fixed define MPI2_IOCPAGE8_FLAGS_ENCLOSURE_SLOT_MAPPING. 168 * Added missing MaxNumRoutedSasAddresses field to 169 * MPI2_CONFIG_PAGE_EXPANDER_0. 170 * Added SAS Port Page 0. 171 * Modified structure layout for 172 * MPI2_CONFIG_PAGE_DRIVER_MAPPING_0. 173 * 06-27-08 02.00.08 Changed MPI2_CONFIG_PAGE_RD_PDISK_1 to use 174 * MPI2_RAID_PHYS_DISK1_PATH_MAX to size the array. 175 * 10-02-08 02.00.09 Changed MPI2_RAID_PGAD_CONFIGNUM_MASK from 0x0000FFFF 176 * to 0x000000FF. 177 * Added two new values for the Physical Disk Coercion Size 178 * bits in the Flags field of Manufacturing Page 4. 179 * Added product-specific Manufacturing pages 16 to 31. 180 * Modified Flags bits for controlling write cache on SATA 181 * drives in IO Unit Page 1. 182 * Added new bit to AdditionalControlFlags of SAS IO Unit 183 * Page 1 to control Invalid Topology Correction. 184 * Added SupportedPhysDisks field to RAID Volume Page 1 and 185 * added related defines. 186 * Added additional defines for RAID Volume Page 0 187 * VolumeStatusFlags field. 188 * Modified meaning of RAID Volume Page 0 VolumeSettings 189 * define for auto-configure of hot-swap drives. 190 * Added PhysDiskAttributes field (and related defines) to 191 * RAID Physical Disk Page 0. 192 * Added MPI2_SAS_PHYINFO_PHY_VACANT define. 193 * Added three new DiscoveryStatus bits for SAS IO Unit 194 * Page 0 and SAS Expander Page 0. 195 * Removed multiplexing information from SAS IO Unit pages. 196 * Added BootDeviceWaitTime field to SAS IO Unit Page 4. 197 * Removed Zone Address Resolved bit from PhyInfo and from 198 * Expander Page 0 Flags field. 199 * Added two new AccessStatus values to SAS Device Page 0 200 * for indicating routing problems. Added 3 reserved words 201 * to this page. 202 * 01-19-09 02.00.10 Fixed defines for GPIOVal field of IO Unit Page 3. 203 * Inserted missing reserved field into structure for IOC 204 * Page 6. 205 * Added more pending task bits to RAID Volume Page 0 206 * VolumeStatusFlags defines. 207 * Added MPI2_PHYSDISK0_STATUS_FLAG_NOT_CERTIFIED define. 208 * Added a new DiscoveryStatus bit for SAS IO Unit Page 0 209 * and SAS Expander Page 0 to flag a downstream initiator 210 * when in simplified routing mode. 211 * Removed SATA Init Failure defines for DiscoveryStatus 212 * fields of SAS IO Unit Page 0 and SAS Expander Page 0. 213 * Added MPI2_SAS_DEVICE0_ASTATUS_DEVICE_BLOCKED define. 214 * Added PortGroups, DmaGroup, and ControlGroup fields to 215 * SAS Device Page 0. 216 * 05-06-09 02.00.11 Added structures and defines for IO Unit Page 5 and IO 217 * Unit Page 6. 218 * Added expander reduced functionality data to SAS 219 * Expander Page 0. 220 * Added SAS PHY Page 2 and SAS PHY Page 3. 221 * 07-30-09 02.00.12 Added IO Unit Page 7. 222 * Added new device ids. 223 * Added SAS IO Unit Page 5. 224 * Added partial and slumber power management capable flags 225 * to SAS Device Page 0 Flags field. 226 * Added PhyInfo defines for power condition. 227 * Added Ethernet configuration pages. 228 * 10-28-09 02.00.13 Added MPI2_IOUNITPAGE1_ENABLE_HOST_BASED_DISCOVERY. 229 * Added SAS PHY Page 4 structure and defines. 230 * 02-10-10 02.00.14 Modified the comments for the configuration page 231 * structures that contain an array of data. The host 232 * should use the "count" field in the page data (e.g. the 233 * NumPhys field) to determine the number of valid elements 234 * in the array. 235 * Added/modified some MPI2_MFGPAGE_DEVID_SAS defines. 236 * Added PowerManagementCapabilities to IO Unit Page 7. 237 * Added PortWidthModGroup field to 238 * MPI2_SAS_IO_UNIT5_PHY_PM_SETTINGS. 239 * Added MPI2_CONFIG_PAGE_SASIOUNIT_6 and related defines. 240 * Added MPI2_CONFIG_PAGE_SASIOUNIT_7 and related defines. 241 * Added MPI2_CONFIG_PAGE_SASIOUNIT_8 and related defines. 242 * 05-12-10 02.00.15 Added MPI2_RAIDVOL0_STATUS_FLAG_VOL_NOT_CONSISTENT 243 * define. 244 * Added MPI2_PHYSDISK0_INCOMPATIBLE_MEDIA_TYPE define. 245 * Added MPI2_SAS_NEG_LINK_RATE_UNSUPPORTED_PHY define. 246 * 08-11-10 02.00.16 Removed IO Unit Page 1 device path (multi-pathing) 247 * defines. 248 * 11-10-10 02.00.17 Added ReceptacleID field (replacing Reserved1) to 249 * MPI2_MANPAGE7_CONNECTOR_INFO and reworked defines for 250 * the Pinout field. 251 * Added BoardTemperature and BoardTemperatureUnits fields 252 * to MPI2_CONFIG_PAGE_IO_UNIT_7. 253 * Added MPI2_CONFIG_EXTPAGETYPE_EXT_MANUFACTURING define 254 * and MPI2_CONFIG_PAGE_EXT_MAN_PS structure. 255 * 02-23-11 02.00.18 Added ProxyVF_ID field to MPI2_CONFIG_REQUEST. 256 * Added IO Unit Page 8, IO Unit Page 9, 257 * and IO Unit Page 10. 258 * Added SASNotifyPrimitiveMasks field to 259 * MPI2_CONFIG_PAGE_IOC_7. 260 * 03-09-11 02.00.19 Fixed IO Unit Page 10 (to match the spec). 261 * 05-25-11 02.00.20 Cleaned up a few comments. 262 * 08-24-11 02.00.21 Marked the IO Unit Page 7 PowerManagementCapabilities 263 * for PCIe link as obsolete. 264 * Added SpinupFlags field containing a Disable Spin-up bit 265 * to the MPI2_SAS_IOUNIT4_SPINUP_GROUP fields of SAS IO 266 * Unit Page 4. 267 * 11-18-11 02.00.22 Added define MPI2_IOCPAGE6_CAP_FLAGS_4K_SECTORS_SUPPORT. 268 * Added UEFIVersion field to BIOS Page 1 and defined new 269 * BiosOptions bits. 270 * Incorporating additions for MPI v2.5. 271 * 11-27-12 02.00.23 Added MPI2_MANPAGE7_FLAG_EVENTREPLAY_SLOT_ORDER. 272 * Added MPI2_BIOSPAGE1_OPTIONS_MASK_OEM_ID. 273 * 12-20-12 02.00.24 Marked MPI2_SASIOUNIT1_CONTROL_CLEAR_AFFILIATION as 274 * obsolete for MPI v2.5 and later. 275 * Added some defines for 12G SAS speeds. 276 * 04-09-13 02.00.25 Added MPI2_IOUNITPAGE1_ATA_SECURITY_FREEZE_LOCK. 277 * Fixed MPI2_IOUNITPAGE5_DMA_CAP_MASK_MAX_REQUESTS to 278 * match the specification. 279 * 08-19-13 02.00.26 Added reserved words to MPI2_CONFIG_PAGE_IO_UNIT_7 for 280 * future use. 281 * 12-05-13 02.00.27 Added MPI2_MANPAGE7_FLAG_BASE_ENCLOSURE_LEVEL for 282 * MPI2_CONFIG_PAGE_MAN_7. 283 * Added EnclosureLevel and ConnectorName fields to 284 * MPI2_CONFIG_PAGE_SAS_DEV_0. 285 * Added MPI2_SAS_DEVICE0_FLAGS_ENCL_LEVEL_VALID for 286 * MPI2_CONFIG_PAGE_SAS_DEV_0. 287 * Added EnclosureLevel field to 288 * MPI2_CONFIG_PAGE_SAS_ENCLOSURE_0. 289 * Added MPI2_SAS_ENCLS0_FLAGS_ENCL_LEVEL_VALID for 290 * MPI2_CONFIG_PAGE_SAS_ENCLOSURE_0. 291 * -------------------------------------------------------------------------- 292 293mpi2_init.h 294 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 295 * 10-31-07 02.00.01 Fixed name for pMpi2SCSITaskManagementRequest_t. 296 * 12-18-07 02.00.02 Modified Task Management Target Reset Method defines. 297 * 02-29-08 02.00.03 Added Query Task Set and Query Unit Attention. 298 * 03-03-08 02.00.04 Fixed name of struct _MPI2_SCSI_TASK_MANAGE_REPLY. 299 * 05-21-08 02.00.05 Fixed typo in name of Mpi2SepRequest_t. 300 * 10-02-08 02.00.06 Removed Untagged and No Disconnect values from SCSI IO 301 * Control field Task Attribute flags. 302 * Moved LUN field defines to mpi2.h becasue they are 303 * common to many structures. 304 * 05-06-09 02.00.07 Changed task management type of Query Unit Attention to 305 * Query Asynchronous Event. 306 * Defined two new bits in the SlotStatus field of the SCSI 307 * Enclosure Processor Request and Reply. 308 * 10-28-09 02.00.08 Added defines for decoding the ResponseInfo bytes for 309 * both SCSI IO Error Reply and SCSI Task Management Reply. 310 * Added ResponseInfo field to MPI2_SCSI_TASK_MANAGE_REPLY. 311 * Added MPI2_SCSITASKMGMT_RSP_TM_OVERLAPPED_TAG define. 312 * 02-10-10 02.00.09 Removed unused structure that had "#if 0" around it. 313 * 05-12-10 02.00.10 Added optional vendor-unique region to SCSI IO Request. 314 * 11-10-10 02.00.11 Added MPI2_SCSIIO_NUM_SGLOFFSETS define. 315 * 11-18-11 02.00.12 Incorporating additions for MPI v2.5. 316 * 02-06-12 02.00.13 Added alternate defines for Task Priority / Command 317 * Priority to match SAM-4. 318 * Added EEDPErrorOffset to MPI2_SCSI_IO_REPLY. 319 * 07-10-12 02.00.14 Added MPI2_SCSIIO_CONTROL_SHIFT_DATADIRECTION. 320 * -------------------------------------------------------------------------- 321 322mpi2_ioc.h 323 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 324 * 06-04-07 02.00.01 In IOCFacts Reply structure, renamed MaxDevices to 325 * MaxTargets. 326 * Added TotalImageSize field to FWDownload Request. 327 * Added reserved words to FWUpload Request. 328 * 06-26-07 02.00.02 Added IR Configuration Change List Event. 329 * 08-31-07 02.00.03 Removed SystemReplyQueueDepth field from the IOCInit 330 * request and replaced it with 331 * ReplyDescriptorPostQueueDepth and ReplyFreeQueueDepth. 332 * Replaced the MinReplyQueueDepth field of the IOCFacts 333 * reply with MaxReplyDescriptorPostQueueDepth. 334 * Added MPI2_RDPQ_DEPTH_MIN define to specify the minimum 335 * depth for the Reply Descriptor Post Queue. 336 * Added SASAddress field to Initiator Device Table 337 * Overflow Event data. 338 * 10-31-07 02.00.04 Added ReasonCode MPI2_EVENT_SAS_INIT_RC_NOT_RESPONDING 339 * for SAS Initiator Device Status Change Event data. 340 * Modified Reason Code defines for SAS Topology Change 341 * List Event data, including adding a bit for PHY Vacant 342 * status, and adding a mask for the Reason Code. 343 * Added define for 344 * MPI2_EVENT_SAS_TOPO_ES_DELAY_NOT_RESPONDING. 345 * Added define for MPI2_EXT_IMAGE_TYPE_MEGARAID. 346 * 12-18-07 02.00.05 Added Boot Status defines for the IOCExceptions field of 347 * the IOCFacts Reply. 348 * Removed MPI2_IOCFACTS_CAPABILITY_EXTENDED_BUFFER define. 349 * Moved MPI2_VERSION_UNION to mpi2.h. 350 * Changed MPI2_EVENT_NOTIFICATION_REQUEST to use masks 351 * instead of enables, and added SASBroadcastPrimitiveMasks 352 * field. 353 * Added Log Entry Added Event and related structure. 354 * 02-29-08 02.00.06 Added define MPI2_IOCFACTS_CAPABILITY_INTEGRATED_RAID. 355 * Removed define MPI2_IOCFACTS_PROTOCOL_SMP_TARGET. 356 * Added MaxVolumes and MaxPersistentEntries fields to 357 * IOCFacts reply. 358 * Added ProtocalFlags and IOCCapabilities fields to 359 * MPI2_FW_IMAGE_HEADER. 360 * Removed MPI2_PORTENABLE_FLAGS_ENABLE_SINGLE_PORT. 361 * 03-03-08 02.00.07 Fixed MPI2_FW_IMAGE_HEADER by changing Reserved26 to 362 * a U16 (from a U32). 363 * Removed extra 's' from EventMasks name. 364 * 06-27-08 02.00.08 Fixed an offset in a comment. 365 * 10-02-08 02.00.09 Removed SystemReplyFrameSize from MPI2_IOC_INIT_REQUEST. 366 * Removed CurReplyFrameSize from MPI2_IOC_FACTS_REPLY and 367 * renamed MinReplyFrameSize to ReplyFrameSize. 368 * Added MPI2_IOCFACTS_EXCEPT_IR_FOREIGN_CONFIG_MAX. 369 * Added two new RAIDOperation values for Integrated RAID 370 * Operations Status Event data. 371 * Added four new IR Configuration Change List Event data 372 * ReasonCode values. 373 * Added two new ReasonCode defines for SAS Device Status 374 * Change Event data. 375 * Added three new DiscoveryStatus bits for the SAS 376 * Discovery event data. 377 * Added Multiplexing Status Change bit to the PhyStatus 378 * field of the SAS Topology Change List event data. 379 * Removed define for MPI2_INIT_IMAGE_BOOTFLAGS_XMEMCOPY. 380 * BootFlags are now product-specific. 381 * Added defines for the indivdual signature bytes 382 * for MPI2_INIT_IMAGE_FOOTER. 383 * 01-19-09 02.00.10 Added MPI2_IOCFACTS_CAPABILITY_EVENT_REPLAY define. 384 * Added MPI2_EVENT_SAS_DISC_DS_DOWNSTREAM_INITIATOR 385 * define. 386 * Added MPI2_EVENT_SAS_DEV_STAT_RC_SATA_INIT_FAILURE 387 * define. 388 * Removed MPI2_EVENT_SAS_DISC_DS_SATA_INIT_FAILURE define. 389 * 05-06-09 02.00.11 Added MPI2_IOCFACTS_CAPABILITY_RAID_ACCELERATOR define. 390 * Added MPI2_IOCFACTS_CAPABILITY_MSI_X_INDEX define. 391 * Added two new reason codes for SAS Device Status Change 392 * Event. 393 * Added new event: SAS PHY Counter. 394 * 07-30-09 02.00.12 Added GPIO Interrupt event define and structure. 395 * Added MPI2_IOCFACTS_CAPABILITY_EXTENDED_BUFFER define. 396 * Added new product id family for 2208. 397 * 10-28-09 02.00.13 Added HostMSIxVectors field to MPI2_IOC_INIT_REQUEST. 398 * Added MaxMSIxVectors field to MPI2_IOC_FACTS_REPLY. 399 * Added MinDevHandle field to MPI2_IOC_FACTS_REPLY. 400 * Added MPI2_IOCFACTS_CAPABILITY_HOST_BASED_DISCOVERY. 401 * Added MPI2_EVENT_HOST_BASED_DISCOVERY_PHY define. 402 * Added MPI2_EVENT_SAS_TOPO_ES_NO_EXPANDER define. 403 * Added Host Based Discovery Phy Event data. 404 * Added defines for ProductID Product field 405 * (MPI2_FW_HEADER_PID_). 406 * Modified values for SAS ProductID Family 407 * (MPI2_FW_HEADER_PID_FAMILY_). 408 * 02-10-10 02.00.14 Added SAS Quiesce Event structure and defines. 409 * Added PowerManagementControl Request structures and 410 * defines. 411 * 05-12-10 02.00.15 Marked Task Set Full Event as obsolete. 412 * Added MPI2_EVENT_SAS_TOPO_LR_UNSUPPORTED_PHY define. 413 * 11-10-10 02.00.16 Added MPI2_FW_DOWNLOAD_ITYPE_MIN_PRODUCT_SPECIFIC. 414 * 02-23-11 02.00.17 Added SAS NOTIFY Primitive event, and added 415 * SASNotifyPrimitiveMasks field to 416 * MPI2_EVENT_NOTIFICATION_REQUEST. 417 * Added Temperature Threshold Event. 418 * Added Host Message Event. 419 * Added Send Host Message request and reply. 420 * 05-25-11 02.00.18 For Extended Image Header, added 421 * MPI2_EXT_IMAGE_TYPE_MIN_PRODUCT_SPECIFIC and 422 * MPI2_EXT_IMAGE_TYPE_MAX_PRODUCT_SPECIFIC defines. 423 * Deprecated MPI2_EXT_IMAGE_TYPE_MAX define. 424 * 08-24-11 02.00.19 Added PhysicalPort field to 425 * MPI2_EVENT_DATA_SAS_DEVICE_STATUS_CHANGE structure. 426 * Marked MPI2_PM_CONTROL_FEATURE_PCIE_LINK as obsolete. 427 * 11-18-11 02.00.20 Incorporating additions for MPI v2.5. 428 * 03-29-12 02.00.21 Added a product specific range to event values. 429 * 07-26-12 02.00.22 Added MPI2_IOCFACTS_EXCEPT_PARTIAL_MEMORY_FAILURE. 430 * Added ElapsedSeconds field to 431 * MPI2_EVENT_DATA_IR_OPERATION_STATUS. 432 * 08-19-13 02.00.23 For IOCInit, added MPI2_IOCINIT_MSGFLAG_RDPQ_ARRAY_MODE 433 * and MPI2_IOC_INIT_RDPQ_ARRAY_ENTRY. 434 * Added MPI2_IOCFACTS_CAPABILITY_RDPQ_ARRAY_CAPABLE. 435 * Added MPI2_FW_DOWNLOAD_ITYPE_PUBLIC_KEY. 436 * Added Encrypted Hash Extended Image. 437 * 12-05-13 02.00.24 Added MPI25_HASH_IMAGE_TYPE_BIOS. 438 * -------------------------------------------------------------------------- 439 440mpi2_raid.h 441 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 442 * 08-31-07 02.00.01 Modifications to RAID Action request and reply, 443 * including the Actions and ActionData. 444 * 02-29-08 02.00.02 Added MPI2_RAID_ACTION_ADATA_DISABL_FULL_REBUILD. 445 * 05-21-08 02.00.03 Added MPI2_RAID_VOL_CREATION_NUM_PHYSDISKS so that 446 * the PhysDisk array in MPI2_RAID_VOLUME_CREATION_STRUCT 447 * can be sized by the build environment. 448 * 07-30-09 02.00.04 Added proper define for the Use Default Settings bit of 449 * VolumeCreationFlags and marked the old one as obsolete. 450 * 05-12-10 02.00.05 Added MPI2_RAID_VOL_FLAGS_OP_MDC define. 451 * 08-24-10 02.00.06 Added MPI2_RAID_ACTION_COMPATIBILITY_CHECK along with 452 * related structures and defines. 453 * Added product-specific range to RAID Action values. 454 * 11-18-11 02.00.07 Incorporating additions for MPI v2.5. 455 * 02-06-12 02.00.08 Added MPI2_RAID_ACTION_PHYSDISK_HIDDEN. 456 * 07-26-12 02.00.09 Added ElapsedSeconds field to MPI2_RAID_VOL_INDICATOR. 457 * Added MPI2_RAID_VOL_FLAGS_ELAPSED_SECONDS_VALID define. 458 * 04-17-13 02.00.10 Added MPI25_RAID_ACTION_ADATA_ALLOW_PI. 459 * -------------------------------------------------------------------------- 460 461mpi2_sas.h 462 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 463 * 06-26-07 02.00.01 Added Clear All Persistent Operation to SAS IO Unit 464 * Control Request. 465 * 10-02-08 02.00.02 Added Set IOC Parameter Operation to SAS IO Unit Control 466 * Request. 467 * 10-28-09 02.00.03 Changed the type of SGL in MPI2_SATA_PASSTHROUGH_REQUEST 468 * to MPI2_SGE_IO_UNION since it supports chained SGLs. 469 * 05-12-10 02.00.04 Modified some comments. 470 * 08-11-10 02.00.05 Added NCQ operations to SAS IO Unit Control. 471 * 11-18-11 02.00.06 Incorporating additions for MPI v2.5. 472 * 07-10-12 02.00.07 Added MPI2_SATA_PT_SGE_UNION for use in the SATA 473 * Passthrough Request message. 474 * 08-19-13 02.00.08 Made MPI2_SAS_OP_TRANSMIT_PORT_SELECT_SIGNAL obsolete 475 * for anything newer than MPI v2.0. 476 * -------------------------------------------------------------------------- 477 478mpi2_targ.h 479 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 480 * 08-31-07 02.00.01 Added Command Buffer Data Location Address Space bits to 481 * BufferPostFlags field of CommandBufferPostBase Request. 482 * 02-29-08 02.00.02 Modified various names to make them 32-character unique. 483 * 10-02-08 02.00.03 Removed NextCmdBufferOffset from 484 * MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST. 485 * Target Status Send Request only takes a single SGE for 486 * response data. 487 * 02-10-10 02.00.04 Added comment to MPI2_TARGET_SSP_RSP_IU structure. 488 * 11-18-11 02.00.05 Incorporating additions for MPI v2.5. 489 * 11-27-12 02.00.06 Added InitiatorDevHandle field to MPI2_TARGET_MODE_ABORT 490 * request message structure. 491 * Added AbortType MPI2_TARGET_MODE_ABORT_DEVHANDLE and 492 * MPI2_TARGET_MODE_ABORT_ALL_COMMANDS. 493 * -------------------------------------------------------------------------- 494 495mpi2_tool.h 496 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 497 * 12-18-07 02.00.01 Added Diagnostic Buffer Post and Diagnostic Release 498 * structures and defines. 499 * 02-29-08 02.00.02 Modified various names to make them 32-character unique. 500 * 05-06-09 02.00.03 Added ISTWI Read Write Tool and Diagnostic CLI Tool. 501 * 07-30-09 02.00.04 Added ExtendedType field to DiagnosticBufferPost request 502 * and reply messages. 503 * Added MPI2_DIAG_BUF_TYPE_EXTENDED. 504 * Incremented MPI2_DIAG_BUF_TYPE_COUNT. 505 * 05-12-10 02.00.05 Added Diagnostic Data Upload tool. 506 * 08-11-10 02.00.06 Added defines that were missing for Diagnostic Buffer 507 * Post Request. 508 * 05-25-11 02.00.07 Added Flags field and related defines to 509 * MPI2_TOOLBOX_ISTWI_READ_WRITE_REQUEST. 510 * 11-18-11 02.00.08 Incorporating additions for MPI v2.5. 511 * 07-10-12 02.00.09 Add MPI v2.5 Toolbox Diagnostic CLI Tool Request 512 * message. 513 * 07-26-12 02.00.10 Modified MPI2_TOOLBOX_DIAGNOSTIC_CLI_REQUEST so that 514 * it uses MPI Chain SGE as well as MPI Simple SGE. 515 * 08-19-13 02.00.11 Added MPI2_TOOLBOX_TEXT_DISPLAY_TOOL and related info. 516 * -------------------------------------------------------------------------- 517 518mpi2_type.h 519 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A. 520 * -------------------------------------------------------------------------- 521 522mpi2_ra.h 523 * 05-06-09 02.00.00 Initial version. 524 * -------------------------------------------------------------------------- 525 526mpi2_hbd.h 527 * 10-28-09 02.00.00 Initial version. 528 * 08-11-10 02.00.01 Removed PortGroups, DmaGroup, and ControlGroup from 529 * HBD Action request, replaced by AdditionalInfo field. 530 * 11-18-11 02.00.02 Incorporating additions for MPI v2.5. 531 * -------------------------------------------------------------------------- 532 533 534mpi2_history.txt Parts list history 535 536Filename 02.00.33 02.00.32 02.00.31 02.00.30 537---------- -------- -------- -------- -------- 538mpi2.h 02.00.33 02.00.32 02.00.31 02.00.30 539mpi2_cnfg.h 02.00.27 02.00.26 02.00.25 02.00.25 540mpi2_init.h 02.00.15 02.00.15 02.00.15 02.00.15 541mpi2_ioc.h 02.00.24 02.00.23 02.00.22 02.00.22 542mpi2_raid.h 02.00.10 02.00.10 02.00.10 02.00.09 543mpi2_sas.h 02.00.08 02.00.08 02.00.07 02.00.07 544mpi2_targ.h 02.00.06 02.00.06 02.00.06 02.00.06 545mpi2_tool.h 02.00.11 02.00.11 02.00.10 02.00.10 546mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 547mpi2_ra.h 02.00.00 02.00.00 02.00.00 02.00.00 548mpi2_hbd.h 02.00.02 02.00.02 02.00.02 02.00.02 549 550Filename 02.00.29 02.00.28 02.00.27 02.00.26 02.00.25 02.00.24 551---------- -------- -------- -------- -------- -------- -------- 552mpi2.h 02.00.29 02.00.28 02.00.27 02.00.26 02.00.25 02.00.24 553mpi2_cnfg.h 02.00.24 02.00.23 02.00.22 02.00.22 02.00.22 02.00.22 554mpi2_init.h 02.00.14 02.00.14 02.00.14 02.00.14 02.00.13 02.00.13 555mpi2_ioc.h 02.00.22 02.00.22 02.00.22 02.00.21 02.00.21 02.00.20 556mpi2_raid.h 02.00.09 02.00.09 02.00.09 02.00.08 02.00.08 02.00.08 557mpi2_sas.h 02.00.07 02.00.07 02.00.07 02.00.07 02.00.06 02.00.06 558mpi2_targ.h 02.00.06 02.00.06 02.00.05 02.00.05 02.00.05 02.00.05 559mpi2_tool.h 02.00.10 02.00.10 02.00.10 02.00.09 02.00.08 02.00.08 560mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 561mpi2_ra.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 562mpi2_hbd.h 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02 563 564Filename 02.00.23 02.00.22 02.00.21 02.00.20 02.00.19 02.00.18 565---------- -------- -------- -------- -------- -------- -------- 566mpi2.h 02.00.23 02.00.22 02.00.21 02.00.20 02.00.19 02.00.18 567mpi2_cnfg.h 02.00.22 02.00.21 02.00.20 02.00.19 02.00.18 02.00.17 568mpi2_init.h 02.00.12 02.00.11 02.00.11 02.00.11 02.00.11 02.00.11 569mpi2_ioc.h 02.00.20 02.00.19 02.00.18 02.00.17 02.00.17 02.00.16 570mpi2_raid.h 02.00.07 02.00.06 02.00.05 02.00.05 02.00.05 02.00.05 571mpi2_sas.h 02.00.06 02.00.05 02.00.05 02.00.05 02.00.05 02.00.05 572mpi2_targ.h 02.00.05 02.00.04 02.00.04 02.00.04 02.00.04 02.00.04 573mpi2_tool.h 02.00.08 02.00.07 02.00.07 02.00.06 02.00.06 02.00.06 574mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 575mpi2_ra.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 576mpi2_hbd.h 02.00.02 02.00.01 02.00.01 02.00.01 02.00.01 02.00.01 577 578Filename 02.00.17 02.00.16 02.00.15 02.00.14 02.00.13 02.00.12 579---------- -------- -------- -------- -------- -------- -------- 580mpi2.h 02.00.17 02.00.16 02.00.15 02.00.14 02.00.13 02.00.12 581mpi2_cnfg.h 02.00.16 02.00.15 02.00.14 02.00.13 02.00.12 02.00.11 582mpi2_init.h 02.00.10 02.00.10 02.00.09 02.00.08 02.00.07 02.00.07 583mpi2_ioc.h 02.00.15 02.00.15 02.00.14 02.00.13 02.00.12 02.00.11 584mpi2_raid.h 02.00.05 02.00.05 02.00.04 02.00.04 02.00.04 02.00.03 585mpi2_sas.h 02.00.05 02.00.04 02.00.03 02.00.03 02.00.02 02.00.02 586mpi2_targ.h 02.00.04 02.00.04 02.00.04 02.00.03 02.00.03 02.00.03 587mpi2_tool.h 02.00.06 02.00.05 02.00.04 02.00.04 02.00.04 02.00.03 588mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 589mpi2_ra.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 590mpi2_hbd.h 02.00.01 02.00.00 02.00.00 02.00.00 591 592Filename 02.00.11 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06 593---------- -------- -------- -------- -------- -------- -------- 594mpi2.h 02.00.11 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06 595mpi2_cnfg.h 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06 02.00.06 596mpi2_init.h 02.00.06 02.00.06 02.00.05 02.00.05 02.00.04 02.00.03 597mpi2_ioc.h 02.00.10 02.00.09 02.00.08 02.00.07 02.00.07 02.00.06 598mpi2_raid.h 02.00.03 02.00.03 02.00.03 02.00.03 02.00.02 02.00.02 599mpi2_sas.h 02.00.02 02.00.02 02.00.01 02.00.01 02.00.01 02.00.01 600mpi2_targ.h 02.00.03 02.00.03 02.00.02 02.00.02 02.00.02 02.00.02 601mpi2_tool.h 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02 602mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 603 604Filename 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00 605---------- -------- -------- -------- -------- -------- -------- 606mpi2.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00 607mpi2_cnfg.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00 608mpi2_init.h 02.00.02 02.00.01 02.00.00 02.00.00 02.00.00 02.00.00 609mpi2_ioc.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00 610mpi2_raid.h 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00 02.00.00 611mpi2_sas.h 02.00.01 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00 612mpi2_targ.h 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00 02.00.00 613mpi2_tool.h 02.00.01 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 614mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 615 616