1 ==============================
2 Fusion-MPT MPI 2.0 Header File Change History
3 ==============================
5 Copyright (c) 2000-2009 LSI Corporation.
7 ---------------------------------------
8 Header Set Release Version: 02.00.14
9 Header Set Release Date: 10-28-09
10 ---------------------------------------
12 Filename Current version Prior version
13 ---------- --------------- -------------
14 mpi2.h 02.00.14 02.00.13
15 mpi2_cnfg.h 02.00.13 02.00.12
16 mpi2_init.h 02.00.08 02.00.07
17 mpi2_ioc.h 02.00.13 02.00.12
18 mpi2_raid.h 02.00.04 02.00.04
19 mpi2_sas.h 02.00.03 02.00.02
20 mpi2_targ.h 02.00.03 02.00.03
21 mpi2_tool.h 02.00.04 02.00.04
22 mpi2_type.h 02.00.00 02.00.00
23 mpi2_ra.h 02.00.00 02.00.00
25 mpi2_history.txt 02.00.14 02.00.13
28 * Date Version Description
29 * -------- -------- ------------------------------------------------------
32 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
33 * 06-04-07 02.00.01 Bumped MPI2_HEADER_VERSION_UNIT.
34 * 06-26-07 02.00.02 Bumped MPI2_HEADER_VERSION_UNIT.
35 * 08-31-07 02.00.03 Bumped MPI2_HEADER_VERSION_UNIT.
36 * Moved ReplyPostHostIndex register to offset 0x6C of the
37 * MPI2_SYSTEM_INTERFACE_REGS and modified the define for
38 * MPI2_REPLY_POST_HOST_INDEX_OFFSET.
39 * Added union of request descriptors.
40 * Added union of reply descriptors.
41 * 10-31-07 02.00.04 Bumped MPI2_HEADER_VERSION_UNIT.
42 * Added define for MPI2_VERSION_02_00.
43 * Fixed the size of the FunctionDependent5 field in the
44 * MPI2_DEFAULT_REPLY structure.
45 * 12-18-07 02.00.05 Bumped MPI2_HEADER_VERSION_UNIT.
46 * Removed the MPI-defined Fault Codes and extended the
47 * product specific codes up to 0xEFFF.
48 * Added a sixth key value for the WriteSequence register
49 * and changed the flush value to 0x0.
50 * Added message function codes for Diagnostic Buffer Post
51 * and Diagnsotic Release.
52 * New IOCStatus define: MPI2_IOCSTATUS_DIAGNOSTIC_RELEASED
53 * Moved MPI2_VERSION_UNION from mpi2_ioc.h.
54 * 02-29-08 02.00.06 Bumped MPI2_HEADER_VERSION_UNIT.
55 * 03-03-08 02.00.07 Bumped MPI2_HEADER_VERSION_UNIT.
56 * 05-21-08 02.00.08 Bumped MPI2_HEADER_VERSION_UNIT.
57 * Added #defines for marking a reply descriptor as unused.
58 * 06-27-08 02.00.09 Bumped MPI2_HEADER_VERSION_UNIT.
59 * 10-02-08 02.00.10 Bumped MPI2_HEADER_VERSION_UNIT.
60 * Moved LUN field defines from mpi2_init.h.
61 * 01-19-09 02.00.11 Bumped MPI2_HEADER_VERSION_UNIT.
62 * 05-06-09 02.00.12 Bumped MPI2_HEADER_VERSION_UNIT.
63 * In all request and reply descriptors, replaced VF_ID
64 * field with MSIxIndex field.
65 * Removed DevHandle field from
66 * MPI2_SCSI_IO_SUCCESS_REPLY_DESCRIPTOR and made those
68 * Added RAID Accelerator functionality.
69 * 07-30-09 02.00.13 Bumped MPI2_HEADER_VERSION_UNIT.
70 * 10-28-09 02.00.14 Bumped MPI2_HEADER_VERSION_UNIT.
71 * Added MSI-x index mask and shift for Reply Post Host
73 * Added function code for Host Based Discovery Action.
74 * --------------------------------------------------------------------------
77 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
78 * 06-04-07 02.00.01 Added defines for SAS IO Unit Page 2 PhyFlags.
79 * Added Manufacturing Page 11.
80 * Added MPI2_SAS_EXPANDER0_FLAGS_CONNECTOR_END_DEVICE
82 * 06-26-07 02.00.02 Adding generic structure for product-specific
83 * Manufacturing pages: MPI2_CONFIG_PAGE_MANUFACTURING_PS.
84 * Rework of BIOS Page 2 configuration page.
85 * Fixed MPI2_BIOSPAGE2_BOOT_DEVICE to be a union of the
87 * Added configuration pages IOC Page 8 and Driver
88 * Persistent Mapping Page 0.
89 * 08-31-07 02.00.03 Modified configuration pages dealing with Integrated
90 * RAID (Manufacturing Page 4, RAID Volume Pages 0 and 1,
91 * RAID Physical Disk Pages 0 and 1, RAID Configuration
93 * Added new value for AccessStatus field of SAS Device
94 * Page 0 (_SATA_NEEDS_INITIALIZATION).
95 * 10-31-07 02.00.04 Added missing SEPDevHandle field to
96 * MPI2_CONFIG_PAGE_SAS_ENCLOSURE_0.
97 * 12-18-07 02.00.05 Modified IO Unit Page 0 to use 32-bit version fields for
99 * Modified IOC Page 7 to use masks and added field for
100 * SASBroadcastPrimitiveMasks.
101 * Added MPI2_CONFIG_PAGE_BIOS_4.
102 * Added MPI2_CONFIG_PAGE_LOG_0.
103 * 02-29-08 02.00.06 Modified various names to make them 32-character unique.
104 * Added SAS Device IDs.
105 * Updated Integrated RAID configuration pages including
106 * Manufacturing Page 4, IOC Page 6, and RAID Configuration
108 * 05-21-08 02.00.07 Added define MPI2_MANPAGE4_MIX_SSD_SAS_SATA.
109 * Added define MPI2_MANPAGE4_PHYSDISK_128MB_COERCION.
110 * Fixed define MPI2_IOCPAGE8_FLAGS_ENCLOSURE_SLOT_MAPPING.
111 * Added missing MaxNumRoutedSasAddresses field to
112 * MPI2_CONFIG_PAGE_EXPANDER_0.
113 * Added SAS Port Page 0.
114 * Modified structure layout for
115 * MPI2_CONFIG_PAGE_DRIVER_MAPPING_0.
116 * 06-27-08 02.00.08 Changed MPI2_CONFIG_PAGE_RD_PDISK_1 to use
117 * MPI2_RAID_PHYS_DISK1_PATH_MAX to size the array.
118 * 10-02-08 02.00.09 Changed MPI2_RAID_PGAD_CONFIGNUM_MASK from 0x0000FFFF
120 * Added two new values for the Physical Disk Coercion Size
121 * bits in the Flags field of Manufacturing Page 4.
122 * Added product-specific Manufacturing pages 16 to 31.
123 * Modified Flags bits for controlling write cache on SATA
124 * drives in IO Unit Page 1.
125 * Added new bit to AdditionalControlFlags of SAS IO Unit
126 * Page 1 to control Invalid Topology Correction.
127 * Added SupportedPhysDisks field to RAID Volume Page 1 and
128 * added related defines.
129 * Added additional defines for RAID Volume Page 0
130 * VolumeStatusFlags field.
131 * Modified meaning of RAID Volume Page 0 VolumeSettings
132 * define for auto-configure of hot-swap drives.
133 * Added PhysDiskAttributes field (and related defines) to
134 * RAID Physical Disk Page 0.
135 * Added MPI2_SAS_PHYINFO_PHY_VACANT define.
136 * Added three new DiscoveryStatus bits for SAS IO Unit
137 * Page 0 and SAS Expander Page 0.
138 * Removed multiplexing information from SAS IO Unit pages.
139 * Added BootDeviceWaitTime field to SAS IO Unit Page 4.
140 * Removed Zone Address Resolved bit from PhyInfo and from
141 * Expander Page 0 Flags field.
142 * Added two new AccessStatus values to SAS Device Page 0
143 * for indicating routing problems. Added 3 reserved words
145 * 01-19-09 02.00.10 Fixed defines for GPIOVal field of IO Unit Page 3.
146 * Inserted missing reserved field into structure for IOC
148 * Added more pending task bits to RAID Volume Page 0
149 * VolumeStatusFlags defines.
150 * Added MPI2_PHYSDISK0_STATUS_FLAG_NOT_CERTIFIED define.
151 * Added a new DiscoveryStatus bit for SAS IO Unit Page 0
152 * and SAS Expander Page 0 to flag a downstream initiator
153 * when in simplified routing mode.
154 * Removed SATA Init Failure defines for DiscoveryStatus
155 * fields of SAS IO Unit Page 0 and SAS Expander Page 0.
156 * Added MPI2_SAS_DEVICE0_ASTATUS_DEVICE_BLOCKED define.
157 * Added PortGroups, DmaGroup, and ControlGroup fields to
159 * 05-06-09 02.00.11 Added structures and defines for IO Unit Page 5 and IO
161 * Added expander reduced functionality data to SAS
163 * Added SAS PHY Page 2 and SAS PHY Page 3.
164 * 07-30-09 02.00.12 Added IO Unit Page 7.
165 * Added new device ids.
166 * Added SAS IO Unit Page 5.
167 * Added partial and slumber power management capable flags
168 * to SAS Device Page 0 Flags field.
169 * Added PhyInfo defines for power condition.
170 * Added Ethernet configuration pages.
171 * 10-28-09 02.00.13 Added MPI2_IOUNITPAGE1_ENABLE_HOST_BASED_DISCOVERY.
172 * Added SAS PHY Page 4 structure and defines.
173 * --------------------------------------------------------------------------
176 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
177 * 10-31-07 02.00.01 Fixed name for pMpi2SCSITaskManagementRequest_t.
178 * 12-18-07 02.00.02 Modified Task Management Target Reset Method defines.
179 * 02-29-08 02.00.03 Added Query Task Set and Query Unit Attention.
180 * 03-03-08 02.00.04 Fixed name of struct _MPI2_SCSI_TASK_MANAGE_REPLY.
181 * 05-21-08 02.00.05 Fixed typo in name of Mpi2SepRequest_t.
182 * 10-02-08 02.00.06 Removed Untagged and No Disconnect values from SCSI IO
183 * Control field Task Attribute flags.
184 * Moved LUN field defines to mpi2.h becasue they are
185 * common to many structures.
186 * 05-06-09 02.00.07 Changed task management type of Query Unit Attention to
187 * Query Asynchronous Event.
188 * Defined two new bits in the SlotStatus field of the SCSI
189 * Enclosure Processor Request and Reply.
190 * 10-28-09 02.00.08 Added defines for decoding the ResponseInfo bytes for
191 * both SCSI IO Error Reply and SCSI Task Management Reply.
192 * Added ResponseInfo field to MPI2_SCSI_TASK_MANAGE_REPLY.
193 * Added MPI2_SCSITASKMGMT_RSP_TM_OVERLAPPED_TAG define.
194 * --------------------------------------------------------------------------
197 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
198 * 06-04-07 02.00.01 In IOCFacts Reply structure, renamed MaxDevices to
200 * Added TotalImageSize field to FWDownload Request.
201 * Added reserved words to FWUpload Request.
202 * 06-26-07 02.00.02 Added IR Configuration Change List Event.
203 * 08-31-07 02.00.03 Removed SystemReplyQueueDepth field from the IOCInit
204 * request and replaced it with
205 * ReplyDescriptorPostQueueDepth and ReplyFreeQueueDepth.
206 * Replaced the MinReplyQueueDepth field of the IOCFacts
207 * reply with MaxReplyDescriptorPostQueueDepth.
208 * Added MPI2_RDPQ_DEPTH_MIN define to specify the minimum
209 * depth for the Reply Descriptor Post Queue.
210 * Added SASAddress field to Initiator Device Table
211 * Overflow Event data.
212 * 10-31-07 02.00.04 Added ReasonCode MPI2_EVENT_SAS_INIT_RC_NOT_RESPONDING
213 * for SAS Initiator Device Status Change Event data.
214 * Modified Reason Code defines for SAS Topology Change
215 * List Event data, including adding a bit for PHY Vacant
216 * status, and adding a mask for the Reason Code.
218 * MPI2_EVENT_SAS_TOPO_ES_DELAY_NOT_RESPONDING.
219 * Added define for MPI2_EXT_IMAGE_TYPE_MEGARAID.
220 * 12-18-07 02.00.05 Added Boot Status defines for the IOCExceptions field of
221 * the IOCFacts Reply.
222 * Removed MPI2_IOCFACTS_CAPABILITY_EXTENDED_BUFFER define.
223 * Moved MPI2_VERSION_UNION to mpi2.h.
224 * Changed MPI2_EVENT_NOTIFICATION_REQUEST to use masks
225 * instead of enables, and added SASBroadcastPrimitiveMasks
227 * Added Log Entry Added Event and related structure.
228 * 02-29-08 02.00.06 Added define MPI2_IOCFACTS_CAPABILITY_INTEGRATED_RAID.
229 * Removed define MPI2_IOCFACTS_PROTOCOL_SMP_TARGET.
230 * Added MaxVolumes and MaxPersistentEntries fields to
232 * Added ProtocalFlags and IOCCapabilities fields to
233 * MPI2_FW_IMAGE_HEADER.
234 * Removed MPI2_PORTENABLE_FLAGS_ENABLE_SINGLE_PORT.
235 * 03-03-08 02.00.07 Fixed MPI2_FW_IMAGE_HEADER by changing Reserved26 to
236 * a U16 (from a U32).
237 * Removed extra 's' from EventMasks name.
238 * 06-27-08 02.00.08 Fixed an offset in a comment.
239 * 10-02-08 02.00.09 Removed SystemReplyFrameSize from MPI2_IOC_INIT_REQUEST.
240 * Removed CurReplyFrameSize from MPI2_IOC_FACTS_REPLY and
241 * renamed MinReplyFrameSize to ReplyFrameSize.
242 * Added MPI2_IOCFACTS_EXCEPT_IR_FOREIGN_CONFIG_MAX.
243 * Added two new RAIDOperation values for Integrated RAID
244 * Operations Status Event data.
245 * Added four new IR Configuration Change List Event data
247 * Added two new ReasonCode defines for SAS Device Status
249 * Added three new DiscoveryStatus bits for the SAS
250 * Discovery event data.
251 * Added Multiplexing Status Change bit to the PhyStatus
252 * field of the SAS Topology Change List event data.
253 * Removed define for MPI2_INIT_IMAGE_BOOTFLAGS_XMEMCOPY.
254 * BootFlags are now product-specific.
255 * Added defines for the indivdual signature bytes
256 * for MPI2_INIT_IMAGE_FOOTER.
257 * 01-19-09 02.00.10 Added MPI2_IOCFACTS_CAPABILITY_EVENT_REPLAY define.
258 * Added MPI2_EVENT_SAS_DISC_DS_DOWNSTREAM_INITIATOR
260 * Added MPI2_EVENT_SAS_DEV_STAT_RC_SATA_INIT_FAILURE
262 * Removed MPI2_EVENT_SAS_DISC_DS_SATA_INIT_FAILURE define.
263 * 05-06-09 02.00.11 Added MPI2_IOCFACTS_CAPABILITY_RAID_ACCELERATOR define.
264 * Added MPI2_IOCFACTS_CAPABILITY_MSI_X_INDEX define.
265 * Added two new reason codes for SAS Device Status Change
267 * Added new event: SAS PHY Counter.
268 * 07-30-09 02.00.12 Added GPIO Interrupt event define and structure.
269 * Added MPI2_IOCFACTS_CAPABILITY_EXTENDED_BUFFER define.
270 * Added new product id family for 2208.
271 * 10-28-09 02.00.13 Added HostMSIxVectors field to MPI2_IOC_INIT_REQUEST.
272 * Added MaxMSIxVectors field to MPI2_IOC_FACTS_REPLY.
273 * Added MinDevHandle field to MPI2_IOC_FACTS_REPLY.
274 * Added MPI2_IOCFACTS_CAPABILITY_HOST_BASED_DISCOVERY.
275 * Added MPI2_EVENT_HOST_BASED_DISCOVERY_PHY define.
276 * Added MPI2_EVENT_SAS_TOPO_ES_NO_EXPANDER define.
277 * Added Host Based Discovery Phy Event data.
278 * Added defines for ProductID Product field
279 * (MPI2_FW_HEADER_PID_).
280 * Modified values for SAS ProductID Family
281 * (MPI2_FW_HEADER_PID_FAMILY_).
282 * --------------------------------------------------------------------------
285 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
286 * 08-31-07 02.00.01 Modifications to RAID Action request and reply,
287 * including the Actions and ActionData.
288 * 02-29-08 02.00.02 Added MPI2_RAID_ACTION_ADATA_DISABL_FULL_REBUILD.
289 * 05-21-08 02.00.03 Added MPI2_RAID_VOL_CREATION_NUM_PHYSDISKS so that
290 * the PhysDisk array in MPI2_RAID_VOLUME_CREATION_STRUCT
291 * can be sized by the build environment.
292 * 07-30-09 02.00.04 Added proper define for the Use Default Settings bit of
293 * VolumeCreationFlags and marked the old one as obsolete.
294 * --------------------------------------------------------------------------
297 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
298 * 06-26-07 02.00.01 Added Clear All Persistent Operation to SAS IO Unit
300 * 10-02-08 02.00.02 Added Set IOC Parameter Operation to SAS IO Unit Control
302 * 10-28-09 02.00.03 Changed the type of SGL in MPI2_SATA_PASSTHROUGH_REQUEST
303 * to MPI2_SGE_IO_UNION since it supports chained SGLs.
304 * --------------------------------------------------------------------------
307 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
308 * 08-31-07 02.00.01 Added Command Buffer Data Location Address Space bits to
309 * BufferPostFlags field of CommandBufferPostBase Request.
310 * 02-29-08 02.00.02 Modified various names to make them 32-character unique.
311 * 10-02-08 02.00.03 Removed NextCmdBufferOffset from
312 * MPI2_TARGET_CMD_BUF_POST_BASE_REQUEST.
313 * Target Status Send Request only takes a single SGE for
315 * --------------------------------------------------------------------------
318 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
319 * 12-18-07 02.00.01 Added Diagnostic Buffer Post and Diagnostic Release
320 * structures and defines.
321 * 02-29-08 02.00.02 Modified various names to make them 32-character unique.
322 * 05-06-09 02.00.03 Added ISTWI Read Write Tool and Diagnostic CLI Tool.
323 * 07-30-09 02.00.04 Added ExtendedType field to DiagnosticBufferPost request
324 * and reply messages.
325 * Added MPI2_DIAG_BUF_TYPE_EXTENDED.
326 * Incremented MPI2_DIAG_BUF_TYPE_COUNT.
327 * --------------------------------------------------------------------------
330 * 04-30-07 02.00.00 Corresponds to Fusion-MPT MPI Specification Rev A.
331 * --------------------------------------------------------------------------
334 * 05-06-09 02.00.00 Initial version.
335 * --------------------------------------------------------------------------
338 * 10-28-09 02.00.00 Initial version.
339 * --------------------------------------------------------------------------
342 mpi2_history.txt Parts list history
344 Filename 02.00.14 02.00.13 02.00.12
345 ---------- -------- -------- --------
346 mpi2.h 02.00.14 02.00.13 02.00.12
347 mpi2_cnfg.h 02.00.13 02.00.12 02.00.11
348 mpi2_init.h 02.00.08 02.00.07 02.00.07
349 mpi2_ioc.h 02.00.13 02.00.12 02.00.11
350 mpi2_raid.h 02.00.04 02.00.04 02.00.03
351 mpi2_sas.h 02.00.03 02.00.02 02.00.02
352 mpi2_targ.h 02.00.03 02.00.03 02.00.03
353 mpi2_tool.h 02.00.04 02.00.04 02.00.03
354 mpi2_type.h 02.00.00 02.00.00 02.00.00
355 mpi2_ra.h 02.00.00 02.00.00 02.00.00
358 Filename 02.00.11 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06
359 ---------- -------- -------- -------- -------- -------- --------
360 mpi2.h 02.00.11 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06
361 mpi2_cnfg.h 02.00.10 02.00.09 02.00.08 02.00.07 02.00.06 02.00.06
362 mpi2_init.h 02.00.06 02.00.06 02.00.05 02.00.05 02.00.04 02.00.03
363 mpi2_ioc.h 02.00.10 02.00.09 02.00.08 02.00.07 02.00.07 02.00.06
364 mpi2_raid.h 02.00.03 02.00.03 02.00.03 02.00.03 02.00.02 02.00.02
365 mpi2_sas.h 02.00.02 02.00.02 02.00.01 02.00.01 02.00.01 02.00.01
366 mpi2_targ.h 02.00.03 02.00.03 02.00.02 02.00.02 02.00.02 02.00.02
367 mpi2_tool.h 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02 02.00.02
368 mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00
370 Filename 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00
371 ---------- -------- -------- -------- -------- -------- --------
372 mpi2.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00
373 mpi2_cnfg.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00
374 mpi2_init.h 02.00.02 02.00.01 02.00.00 02.00.00 02.00.00 02.00.00
375 mpi2_ioc.h 02.00.05 02.00.04 02.00.03 02.00.02 02.00.01 02.00.00
376 mpi2_raid.h 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00 02.00.00
377 mpi2_sas.h 02.00.01 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00
378 mpi2_targ.h 02.00.01 02.00.01 02.00.01 02.00.00 02.00.00 02.00.00
379 mpi2_tool.h 02.00.01 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00
380 mpi2_type.h 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00 02.00.00