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