mpi_ioc.h (102599) | mpi_ioc.h (115778) |
---|---|
1/* $FreeBSD: head/sys/dev/mpt/mpilib/mpi_ioc.h 102599 2002-08-30 03:36:50Z mjacob $ */ | 1/* $FreeBSD: head/sys/dev/mpt/mpilib/mpi_ioc.h 115778 2003-06-03 17:47:48Z mjacob $ */ |
2/* 3 * Copyright (c) 2000, 2001 by LSI Logic Corporation 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 immediately at the beginning of the file, without modification, --- 13 unchanged lines hidden (view full) --- 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * 26 * 27 * Name: MPI_IOC.H 28 * Title: MPI IOC, Port, Event, FW Download, and FW Upload messages 29 * Creation Date: August 11, 2000 30 * | 2/* 3 * Copyright (c) 2000, 2001 by LSI Logic Corporation 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 immediately at the beginning of the file, without modification, --- 13 unchanged lines hidden (view full) --- 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * 26 * 27 * Name: MPI_IOC.H 28 * Title: MPI IOC, Port, Event, FW Download, and FW Upload messages 29 * Creation Date: August 11, 2000 30 * |
31 * MPI Version: 01.02.04 | 31 * MPI_IOC.H Version: 01.02.07 |
32 * 33 * Version History 34 * --------------- 35 * 36 * Date Version Description 37 * -------- -------- ------------------------------------------------------ 38 * 05-08-00 00.10.01 Original release for 0.10 spec dated 4/26/2000. 39 * 05-24-00 00.10.02 Added _MSG_IOC_INIT_REPLY structure. --- 28 unchanged lines hidden (view full) --- 68 * Added event MPI_EVENT_ON_BUS_TIMER_EXPIRED. 69 * Added MPI_IOCINIT_FLAGS_DISCARD_FW_IMAGE. 70 * Replaced a reserved field in MSG_IOC_FACTS_REPLY with 71 * IOCExceptions and changed DataImageSize to reserved. 72 * Added MPI_FW_DOWNLOAD_ITYPE_NVSTORE_DATA and 73 * MPI_FW_UPLOAD_ITYPE_NVDATA. 74 * 09-28-01 01.02.03 Modified Event Data for Integrated RAID. 75 * 11-01-01 01.02.04 Added defines for MPI_EXT_IMAGE_HEADER ImageType field. | 32 * 33 * Version History 34 * --------------- 35 * 36 * Date Version Description 37 * -------- -------- ------------------------------------------------------ 38 * 05-08-00 00.10.01 Original release for 0.10 spec dated 4/26/2000. 39 * 05-24-00 00.10.02 Added _MSG_IOC_INIT_REPLY structure. --- 28 unchanged lines hidden (view full) --- 68 * Added event MPI_EVENT_ON_BUS_TIMER_EXPIRED. 69 * Added MPI_IOCINIT_FLAGS_DISCARD_FW_IMAGE. 70 * Replaced a reserved field in MSG_IOC_FACTS_REPLY with 71 * IOCExceptions and changed DataImageSize to reserved. 72 * Added MPI_FW_DOWNLOAD_ITYPE_NVSTORE_DATA and 73 * MPI_FW_UPLOAD_ITYPE_NVDATA. 74 * 09-28-01 01.02.03 Modified Event Data for Integrated RAID. 75 * 11-01-01 01.02.04 Added defines for MPI_EXT_IMAGE_HEADER ImageType field. |
76 * 03-14-02 01.02.05 Added HeaderVersion field to MSG_IOC_FACTS_REPLY. 77 * 05-31-02 01.02.06 Added define for 78 * MPI_IOCFACTS_EXCEPT_RAID_CONFIG_INVALID. 79 * Added AliasIndex to EVENT_DATA_LOGOUT structure. 80 * 04-01-03 01.02.07 Added defines for MPI_FW_HEADER_SIGNATURE_. |
|
76 * -------------------------------------------------------------------------- 77 */ 78 79#ifndef MPI_IOC_H 80#define MPI_IOC_H 81 82 83/***************************************************************************** --- 84 unchanged lines hidden (view full) --- 168} MPI_FW_VERSION; 169 170/* IOC Facts Reply */ 171typedef struct _MSG_IOC_FACTS_REPLY 172{ 173 U16 MsgVersion; /* 00h */ 174 U8 MsgLength; /* 02h */ 175 U8 Function; /* 03h */ | 81 * -------------------------------------------------------------------------- 82 */ 83 84#ifndef MPI_IOC_H 85#define MPI_IOC_H 86 87 88/***************************************************************************** --- 84 unchanged lines hidden (view full) --- 173} MPI_FW_VERSION; 174 175/* IOC Facts Reply */ 176typedef struct _MSG_IOC_FACTS_REPLY 177{ 178 U16 MsgVersion; /* 00h */ 179 U8 MsgLength; /* 02h */ 180 U8 Function; /* 03h */ |
176 U16 Reserved; /* 04h */ | 181 U16 HeaderVersion; /* 04h */ |
177 U8 IOCNumber; /* 06h */ 178 U8 MsgFlags; /* 07h */ 179 U32 MsgContext; /* 08h */ 180 U16 IOCExceptions; /* 0Ch */ 181 U16 IOCStatus; /* 0Eh */ 182 U32 IOCLogInfo; /* 10h */ 183 U8 MaxChainDepth; /* 14h */ 184 U8 WhoInit; /* 15h */ --- 15 unchanged lines hidden (view full) --- 200 U32 Reserved4; /* 34h */ 201 MPI_FW_VERSION FWVersion; /* 38h */ 202} MSG_IOC_FACTS_REPLY, MPI_POINTER PTR_MSG_IOC_FACTS_REPLY, 203 IOCFactsReply_t, MPI_POINTER pIOCFactsReply_t; 204 205#define MPI_IOCFACTS_MSGVERSION_MAJOR_MASK (0xFF00) 206#define MPI_IOCFACTS_MSGVERSION_MINOR_MASK (0x00FF) 207 | 182 U8 IOCNumber; /* 06h */ 183 U8 MsgFlags; /* 07h */ 184 U32 MsgContext; /* 08h */ 185 U16 IOCExceptions; /* 0Ch */ 186 U16 IOCStatus; /* 0Eh */ 187 U32 IOCLogInfo; /* 10h */ 188 U8 MaxChainDepth; /* 14h */ 189 U8 WhoInit; /* 15h */ --- 15 unchanged lines hidden (view full) --- 205 U32 Reserved4; /* 34h */ 206 MPI_FW_VERSION FWVersion; /* 38h */ 207} MSG_IOC_FACTS_REPLY, MPI_POINTER PTR_MSG_IOC_FACTS_REPLY, 208 IOCFactsReply_t, MPI_POINTER pIOCFactsReply_t; 209 210#define MPI_IOCFACTS_MSGVERSION_MAJOR_MASK (0xFF00) 211#define MPI_IOCFACTS_MSGVERSION_MINOR_MASK (0x00FF) 212 |
213#define MPI_IOCFACTS_HEADERVERSION_UNIT_MASK (0xFF00) 214#define MPI_IOCFACTS_HEADERVERSION_DEV_MASK (0x00FF) 215 |
|
208#define MPI_IOCFACTS_EXCEPT_CONFIG_CHECKSUM_FAIL (0x0001) | 216#define MPI_IOCFACTS_EXCEPT_CONFIG_CHECKSUM_FAIL (0x0001) |
217#define MPI_IOCFACTS_EXCEPT_RAID_CONFIG_INVALID (0x0002) |
|
209 210#define MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT (0x01) 211 212#define MPI_IOCFACTS_EVENTSTATE_DISABLED (0x00) 213#define MPI_IOCFACTS_EVENTSTATE_ENABLED (0x01) 214 215 216 --- 264 unchanged lines hidden (view full) --- 481#define MPI_EVENT_LOOP_STATE_CHANGE_LPE (0x0002) 482#define MPI_EVENT_LOOP_STATE_CHANGE_LPB (0x0003) 483 484/* MPI LOGOUT Event data */ 485 486typedef struct _EVENT_DATA_LOGOUT 487{ 488 U32 NPortID; /* 00h */ | 218 219#define MPI_IOCFACTS_FLAGS_FW_DOWNLOAD_BOOT (0x01) 220 221#define MPI_IOCFACTS_EVENTSTATE_DISABLED (0x00) 222#define MPI_IOCFACTS_EVENTSTATE_ENABLED (0x01) 223 224 225 --- 264 unchanged lines hidden (view full) --- 490#define MPI_EVENT_LOOP_STATE_CHANGE_LPE (0x0002) 491#define MPI_EVENT_LOOP_STATE_CHANGE_LPB (0x0003) 492 493/* MPI LOGOUT Event data */ 494 495typedef struct _EVENT_DATA_LOGOUT 496{ 497 U32 NPortID; /* 00h */ |
489 U8 Reserved; /* 04h */ | 498 U8 AliasIndex; /* 04h */ |
490 U8 Port; /* 05h */ 491 U16 Reserved1; /* 06h */ 492} EVENT_DATA_LOGOUT, MPI_POINTER PTR_EVENT_DATA_LOGOUT, 493 EventDataLogout_t, MPI_POINTER pEventDataLogout_t; 494 | 499 U8 Port; /* 05h */ 500 U16 Reserved1; /* 06h */ 501} EVENT_DATA_LOGOUT, MPI_POINTER PTR_EVENT_DATA_LOGOUT, 502 EventDataLogout_t, MPI_POINTER pEventDataLogout_t; 503 |
504#define MPI_EVENT_LOGOUT_ALL_ALIASES (0xFF) 505 506 |
|
495/* MPI Integrated RAID Event data */ 496 497typedef struct _EVENT_DATA_RAID 498{ 499 U8 VolumeID; /* 00h */ 500 U8 VolumeBus; /* 01h */ 501 U8 ReasonCode; /* 02h */ 502 U8 PhysDiskNum; /* 03h */ --- 157 unchanged lines hidden (view full) --- 660 661#define MPI_FW_HEADER_WHAT_SIGNATURE (0x29232840) 662 663/* defines for using the ProductId field */ 664#define MPI_FW_HEADER_PID_TYPE_MASK (0xF000) 665#define MPI_FW_HEADER_PID_TYPE_SCSI (0x0000) 666#define MPI_FW_HEADER_PID_TYPE_FC (0x1000) 667 | 507/* MPI Integrated RAID Event data */ 508 509typedef struct _EVENT_DATA_RAID 510{ 511 U8 VolumeID; /* 00h */ 512 U8 VolumeBus; /* 01h */ 513 U8 ReasonCode; /* 02h */ 514 U8 PhysDiskNum; /* 03h */ --- 157 unchanged lines hidden (view full) --- 672 673#define MPI_FW_HEADER_WHAT_SIGNATURE (0x29232840) 674 675/* defines for using the ProductId field */ 676#define MPI_FW_HEADER_PID_TYPE_MASK (0xF000) 677#define MPI_FW_HEADER_PID_TYPE_SCSI (0x0000) 678#define MPI_FW_HEADER_PID_TYPE_FC (0x1000) 679 |
680#define MPI_FW_HEADER_SIGNATURE_0 (0x5AEAA55A) 681#define MPI_FW_HEADER_SIGNATURE_1 (0xA55AEAA5) 682#define MPI_FW_HEADER_SIGNATURE_2 (0x5AA55AEA) 683 |
|
668#define MPI_FW_HEADER_PID_PROD_MASK (0x0F00) 669#define MPI_FW_HEADER_PID_PROD_INITIATOR_SCSI (0x0100) 670#define MPI_FW_HEADER_PID_PROD_TARGET_INITIATOR_SCSI (0x0200) 671#define MPI_FW_HEADER_PID_PROD_TARGET_SCSI (0x0300) 672#define MPI_FW_HEADER_PID_PROD_IM_SCSI (0x0400) 673#define MPI_FW_HEADER_PID_PROD_IS_SCSI (0x0500) 674#define MPI_FW_HEADER_PID_PROD_CTX_SCSI (0x0600) 675 --- 34 unchanged lines hidden --- | 684#define MPI_FW_HEADER_PID_PROD_MASK (0x0F00) 685#define MPI_FW_HEADER_PID_PROD_INITIATOR_SCSI (0x0100) 686#define MPI_FW_HEADER_PID_PROD_TARGET_INITIATOR_SCSI (0x0200) 687#define MPI_FW_HEADER_PID_PROD_TARGET_SCSI (0x0300) 688#define MPI_FW_HEADER_PID_PROD_IM_SCSI (0x0400) 689#define MPI_FW_HEADER_PID_PROD_IS_SCSI (0x0500) 690#define MPI_FW_HEADER_PID_PROD_CTX_SCSI (0x0600) 691 --- 34 unchanged lines hidden --- |