📄 mpi_cnfg.h
字号:
#define MPI_SAS_DEVICE_PGAD_FORM_MASK (0xF0000000)#define MPI_SAS_DEVICE_PGAD_FORM_SHIFT (28)#define MPI_SAS_DEVICE_PGAD_FORM_GET_NEXT_HANDLE (0x00000000)#define MPI_SAS_DEVICE_PGAD_FORM_BUS_TARGET_ID (0x00000001)#define MPI_SAS_DEVICE_PGAD_FORM_HANDLE (0x00000002)#define MPI_SAS_DEVICE_PGAD_GNH_HANDLE_MASK (0x0000FFFF)#define MPI_SAS_DEVICE_PGAD_GNH_HANDLE_SHIFT (0)#define MPI_SAS_DEVICE_PGAD_BT_BUS_MASK (0x0000FF00)#define MPI_SAS_DEVICE_PGAD_BT_BUS_SHIFT (8)#define MPI_SAS_DEVICE_PGAD_BT_TID_MASK (0x000000FF)#define MPI_SAS_DEVICE_PGAD_BT_TID_SHIFT (0)#define MPI_SAS_DEVICE_PGAD_H_HANDLE_MASK (0x0000FFFF)#define MPI_SAS_DEVICE_PGAD_H_HANDLE_SHIFT (0)#define MPI_SAS_PHY_PGAD_PHY_NUMBER_MASK (0x00FF0000)#define MPI_SAS_PHY_PGAD_PHY_NUMBER_SHIFT (16)#define MPI_SAS_PHY_PGAD_DEVHANDLE_MASK (0x0000FFFF)#define MPI_SAS_PHY_PGAD_DEVHANDLE_SHIFT (0)/***************************************************************************** Config Request Message****************************************************************************/typedef struct _MSG_CONFIG{ U8 Action; /* 00h */ U8 Reserved; /* 01h */ U8 ChainOffset; /* 02h */ U8 Function; /* 03h */ U16 ExtPageLength; /* 04h */ U8 ExtPageType; /* 06h */ U8 MsgFlags; /* 07h */ U32 MsgContext; /* 08h */ U8 Reserved2[8]; /* 0Ch */ fCONFIG_PAGE_HEADER Header; /* 14h */ U32 PageAddress; /* 18h */ SGE_IO_UNION PageBufferSGE; /* 1Ch */} MSG_CONFIG, MPI_POINTER PTR_MSG_CONFIG, Config_t, MPI_POINTER pConfig_t;/***************************************************************************** Action field values****************************************************************************/#define MPI_CONFIG_ACTION_PAGE_HEADER (0x00)#define MPI_CONFIG_ACTION_PAGE_READ_CURRENT (0x01)#define MPI_CONFIG_ACTION_PAGE_WRITE_CURRENT (0x02)#define MPI_CONFIG_ACTION_PAGE_DEFAULT (0x03)#define MPI_CONFIG_ACTION_PAGE_WRITE_NVRAM (0x04)#define MPI_CONFIG_ACTION_PAGE_READ_DEFAULT (0x05)#define MPI_CONFIG_ACTION_PAGE_READ_NVRAM (0x06)/* Config Reply Message */typedef struct _MSG_CONFIG_REPLY{ U8 Action; /* 00h */ U8 Reserved; /* 01h */ U8 MsgLength; /* 02h */ U8 Function; /* 03h */ U16 ExtPageLength; /* 04h */ U8 ExtPageType; /* 06h */ U8 MsgFlags; /* 07h */ U32 MsgContext; /* 08h */ U8 Reserved2[2]; /* 0Ch */ U16 IOCStatus; /* 0Eh */ U32 IOCLogInfo; /* 10h */ fCONFIG_PAGE_HEADER Header; /* 14h */} MSG_CONFIG_REPLY, MPI_POINTER PTR_MSG_CONFIG_REPLY, ConfigReply_t, MPI_POINTER pConfigReply_t;/******************************************************************************* C o n f i g u r a t i o n P a g e s******************************************************************************//***************************************************************************** Manufacturing Config pages****************************************************************************/#define MPI_MANUFACTPAGE_VENDORID_LSILOGIC (0x1000)/* Fibre Channel */#define MPI_MANUFACTPAGE_DEVICEID_FC909 (0x0621)#define MPI_MANUFACTPAGE_DEVICEID_FC919 (0x0624)#define MPI_MANUFACTPAGE_DEVICEID_FC929 (0x0622)#define MPI_MANUFACTPAGE_DEVICEID_FC919X (0x0628)#define MPI_MANUFACTPAGE_DEVICEID_FC929X (0x0626)/* SCSI */#define MPI_MANUFACTPAGE_DEVID_53C1030 (0x0030)#define MPI_MANUFACTPAGE_DEVID_53C1030ZC (0x0031)#define MPI_MANUFACTPAGE_DEVID_1030_53C1035 (0x0032)#define MPI_MANUFACTPAGE_DEVID_1030ZC_53C1035 (0x0033)#define MPI_MANUFACTPAGE_DEVID_53C1035 (0x0040)#define MPI_MANUFACTPAGE_DEVID_53C1035ZC (0x0041)/* SAS */#define MPI_MANUFACTPAGE_DEVID_SAS1064 (0x0050)typedef struct _CONFIG_PAGE_MANUFACTURING_0{ fCONFIG_PAGE_HEADER Header; /* 00h */ U8 ChipName[16]; /* 04h */ U8 ChipRevision[8]; /* 14h */ U8 BoardName[16]; /* 1Ch */ U8 BoardAssembly[16]; /* 2Ch */ U8 BoardTracerNumber[16]; /* 3Ch */} fCONFIG_PAGE_MANUFACTURING_0, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_0, ManufacturingPage0_t, MPI_POINTER pManufacturingPage0_t;#define MPI_MANUFACTURING0_PAGEVERSION (0x00)typedef struct _CONFIG_PAGE_MANUFACTURING_1{ fCONFIG_PAGE_HEADER Header; /* 00h */ U8 VPD[256]; /* 04h */} fCONFIG_PAGE_MANUFACTURING_1, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_1, ManufacturingPage1_t, MPI_POINTER pManufacturingPage1_t;#define MPI_MANUFACTURING1_PAGEVERSION (0x00)typedef struct _MPI_CHIP_REVISION_ID{ U16 DeviceID; /* 00h */ U8 PCIRevisionID; /* 02h */ U8 Reserved; /* 03h */} MPI_CHIP_REVISION_ID, MPI_POINTER PTR_MPI_CHIP_REVISION_ID, MpiChipRevisionId_t, MPI_POINTER pMpiChipRevisionId_t;/* * Host code (drivers, BIOS, utilities, etc.) should leave this define set to * one and check Header.PageLength at runtime. */#ifndef MPI_MAN_PAGE_2_HW_SETTINGS_WORDS#define MPI_MAN_PAGE_2_HW_SETTINGS_WORDS (1)#endiftypedef struct _CONFIG_PAGE_MANUFACTURING_2{ fCONFIG_PAGE_HEADER Header; /* 00h */ MPI_CHIP_REVISION_ID ChipId; /* 04h */ U32 HwSettings[MPI_MAN_PAGE_2_HW_SETTINGS_WORDS];/* 08h */} fCONFIG_PAGE_MANUFACTURING_2, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_2, ManufacturingPage2_t, MPI_POINTER pManufacturingPage2_t;#define MPI_MANUFACTURING2_PAGEVERSION (0x00)/* * Host code (drivers, BIOS, utilities, etc.) should leave this define set to * one and check Header.PageLength at runtime. */#ifndef MPI_MAN_PAGE_3_INFO_WORDS#define MPI_MAN_PAGE_3_INFO_WORDS (1)#endiftypedef struct _CONFIG_PAGE_MANUFACTURING_3{ fCONFIG_PAGE_HEADER Header; /* 00h */ MPI_CHIP_REVISION_ID ChipId; /* 04h */ U32 Info[MPI_MAN_PAGE_3_INFO_WORDS];/* 08h */} fCONFIG_PAGE_MANUFACTURING_3, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_3, ManufacturingPage3_t, MPI_POINTER pManufacturingPage3_t;#define MPI_MANUFACTURING3_PAGEVERSION (0x00)typedef struct _CONFIG_PAGE_MANUFACTURING_4{ fCONFIG_PAGE_HEADER Header; /* 00h */ U32 Reserved1; /* 04h */ U8 InfoOffset0; /* 08h */ U8 InfoSize0; /* 09h */ U8 InfoOffset1; /* 0Ah */ U8 InfoSize1; /* 0Bh */ U8 InquirySize; /* 0Ch */ U8 Flags; /* 0Dh */ U16 Reserved2; /* 0Eh */ U8 InquiryData[56]; /* 10h */ U32 ISVolumeSettings; /* 48h */ U32 IMEVolumeSettings; /* 4Ch */ U32 IMVolumeSettings; /* 50h */} fCONFIG_PAGE_MANUFACTURING_4, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_4, ManufacturingPage4_t, MPI_POINTER pManufacturingPage4_t;#define MPI_MANUFACTURING4_PAGEVERSION (0x01)/* defines for the Flags field */#define MPI_MANPAGE4_IR_NO_MIX_SAS_SATA (0x01)typedef struct _CONFIG_PAGE_MANUFACTURING_5{ fCONFIG_PAGE_HEADER Header; /* 00h */ U64 BaseWWID; /* 04h */} fCONFIG_PAGE_MANUFACTURING_5, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_5, ManufacturingPage5_t, MPI_POINTER pManufacturingPage5_t;#define MPI_MANUFACTURING5_PAGEVERSION (0x00)typedef struct _CONFIG_PAGE_MANUFACTURING_6{ fCONFIG_PAGE_HEADER Header; /* 00h */ U32 ProductSpecificInfo;/* 04h */} fCONFIG_PAGE_MANUFACTURING_6, MPI_POINTER PTR_CONFIG_PAGE_MANUFACTURING_6, ManufacturingPage6_t, MPI_POINTER pManufacturingPage6_t;#define MPI_MANUFACTURING6_PAGEVERSION (0x00)/***************************************************************************** IO Unit Config Pages****************************************************************************/typedef struct _CONFIG_PAGE_IO_UNIT_0{ fCONFIG_PAGE_HEADER Header; /* 00h */ U64 UniqueValue; /* 04h */} fCONFIG_PAGE_IO_UNIT_0, MPI_POINTER PTR_CONFIG_PAGE_IO_UNIT_0, IOUnitPage0_t, MPI_POINTER pIOUnitPage0_t;#define MPI_IOUNITPAGE0_PAGEVERSION (0x00)typedef struct _CONFIG_PAGE_IO_UNIT_1{ fCONFIG_PAGE_HEADER Header; /* 00h */ U32 Flags; /* 04h */} fCONFIG_PAGE_IO_UNIT_1, MPI_POINTER PTR_CONFIG_PAGE_IO_UNIT_1, IOUnitPage1_t, MPI_POINTER pIOUnitPage1_t;#define MPI_IOUNITPAGE1_PAGEVERSION (0x01)/* IO Unit Page 1 Flags defines */#define MPI_IOUNITPAGE1_MULTI_FUNCTION (0x00000000)#define MPI_IOUNITPAGE1_SINGLE_FUNCTION (0x00000001)#define MPI_IOUNITPAGE1_MULTI_PATHING (0x00000002)#define MPI_IOUNITPAGE1_SINGLE_PATHING (0x00000000)#define MPI_IOUNITPAGE1_IR_USE_STATIC_VOLUME_ID (0x00000004)#define MPI_IOUNITPAGE1_DISABLE_QUEUE_FULL_HANDLING (0x00000020)#define MPI_IOUNITPAGE1_DISABLE_IR (0x00000040)#define MPI_IOUNITPAGE1_FORCE_32 (0x00000080)#define MPI_IOUNITPAGE1_NATIVE_COMMAND_Q_DISABLE (0x00000100)typedef struct _MPI_ADAPTER_INFO{ U8 PciBusNumber; /* 00h */ U8 PciDeviceAndFunctionNumber; /* 01h */ U16 AdapterFlags; /* 02h */} MPI_ADAPTER_INFO, MPI_POINTER PTR_MPI_ADAPTER_INFO, MpiAdapterInfo_t, MPI_POINTER pMpiAdapterInfo_t;#define MPI_ADAPTER_INFO_FLAGS_EMBEDDED (0x0001)#define MPI_ADAPTER_INFO_FLAGS_INIT_STATUS (0x0002)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -