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