diff options
| author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-12-26 09:52:54 -0500 |
|---|---|---|
| committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-12-26 09:52:54 -0500 |
| commit | 7f50548abb5454bd82c25aae15f0a3bf6a530f46 (patch) | |
| tree | 175b5d695437151f0f9f778ad8eb7f274468842f /drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h | |
| parent | b3172f222ab5afdc91ea058bd11c42cf169728f3 (diff) | |
| parent | 6b7b284958d47b77d06745b36bc7f36dab769d9b (diff) | |
Merge commit 'v2.6.33-rc2' into for-2.6.33
Diffstat (limited to 'drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h')
| -rw-r--r-- | drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h | 274 |
1 files changed, 271 insertions, 3 deletions
diff --git a/drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h b/drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h index ab47c4679640..1611c57a6fdf 100644 --- a/drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h +++ b/drivers/scsi/mpt2sas/mpi/mpi2_cnfg.h | |||
| @@ -6,7 +6,7 @@ | |||
| 6 | * Title: MPI Configuration messages and pages | 6 | * Title: MPI Configuration messages and pages |
| 7 | * Creation Date: November 10, 2006 | 7 | * Creation Date: November 10, 2006 |
| 8 | * | 8 | * |
| 9 | * mpi2_cnfg.h Version: 02.00.11 | 9 | * mpi2_cnfg.h Version: 02.00.12 |
| 10 | * | 10 | * |
| 11 | * Version History | 11 | * Version History |
| 12 | * --------------- | 12 | * --------------- |
| @@ -100,6 +100,13 @@ | |||
| 100 | * Added expander reduced functionality data to SAS | 100 | * Added expander reduced functionality data to SAS |
| 101 | * Expander Page 0. | 101 | * Expander Page 0. |
| 102 | * Added SAS PHY Page 2 and SAS PHY Page 3. | 102 | * Added SAS PHY Page 2 and SAS PHY Page 3. |
| 103 | * 07-30-09 02.00.12 Added IO Unit Page 7. | ||
| 104 | * Added new device ids. | ||
| 105 | * Added SAS IO Unit Page 5. | ||
| 106 | * Added partial and slumber power management capable flags | ||
| 107 | * to SAS Device Page 0 Flags field. | ||
| 108 | * Added PhyInfo defines for power condition. | ||
| 109 | * Added Ethernet configuration pages. | ||
| 103 | * -------------------------------------------------------------------------- | 110 | * -------------------------------------------------------------------------- |
| 104 | */ | 111 | */ |
| 105 | 112 | ||
| @@ -182,6 +189,7 @@ typedef union _MPI2_CONFIG_EXT_PAGE_HEADER_UNION | |||
| 182 | #define MPI2_CONFIG_EXTPAGETYPE_RAID_CONFIG (0x16) | 189 | #define MPI2_CONFIG_EXTPAGETYPE_RAID_CONFIG (0x16) |
| 183 | #define MPI2_CONFIG_EXTPAGETYPE_DRIVER_MAPPING (0x17) | 190 | #define MPI2_CONFIG_EXTPAGETYPE_DRIVER_MAPPING (0x17) |
| 184 | #define MPI2_CONFIG_EXTPAGETYPE_SAS_PORT (0x18) | 191 | #define MPI2_CONFIG_EXTPAGETYPE_SAS_PORT (0x18) |
| 192 | #define MPI2_CONFIG_EXTPAGETYPE_ETHERNET (0x19) | ||
| 185 | 193 | ||
| 186 | 194 | ||
| 187 | /***************************************************************************** | 195 | /***************************************************************************** |
| @@ -268,6 +276,14 @@ typedef union _MPI2_CONFIG_EXT_PAGE_HEADER_UNION | |||
| 268 | #define MPI2_DPM_PGAD_START_ENTRY_MASK (0x0000FFFF) | 276 | #define MPI2_DPM_PGAD_START_ENTRY_MASK (0x0000FFFF) |
| 269 | 277 | ||
| 270 | 278 | ||
| 279 | /* Ethernet PageAddress format */ | ||
| 280 | #define MPI2_ETHERNET_PGAD_FORM_MASK (0xF0000000) | ||
| 281 | #define MPI2_ETHERNET_PGAD_FORM_IF_NUM (0x00000000) | ||
| 282 | |||
| 283 | #define MPI2_ETHERNET_PGAD_IF_NUMBER_MASK (0x000000FF) | ||
| 284 | |||
| 285 | |||
| 286 | |||
| 271 | /**************************************************************************** | 287 | /**************************************************************************** |
| 272 | * Configuration messages | 288 | * Configuration messages |
| 273 | ****************************************************************************/ | 289 | ****************************************************************************/ |
| @@ -349,6 +365,15 @@ typedef struct _MPI2_CONFIG_REPLY | |||
| 349 | #define MPI2_MFGPAGE_DEVID_SAS2116_1 (0x0064) | 365 | #define MPI2_MFGPAGE_DEVID_SAS2116_1 (0x0064) |
| 350 | #define MPI2_MFGPAGE_DEVID_SAS2116_2 (0x0065) | 366 | #define MPI2_MFGPAGE_DEVID_SAS2116_2 (0x0065) |
| 351 | 367 | ||
| 368 | #define MPI2_MFGPAGE_DEVID_SAS2208_1 (0x0080) | ||
| 369 | #define MPI2_MFGPAGE_DEVID_SAS2208_2 (0x0081) | ||
| 370 | #define MPI2_MFGPAGE_DEVID_SAS2208_3 (0x0082) | ||
| 371 | #define MPI2_MFGPAGE_DEVID_SAS2208_4 (0x0083) | ||
| 372 | #define MPI2_MFGPAGE_DEVID_SAS2208_5 (0x0084) | ||
| 373 | #define MPI2_MFGPAGE_DEVID_SAS2208_6 (0x0085) | ||
| 374 | #define MPI2_MFGPAGE_DEVID_SAS2208_7 (0x0086) | ||
| 375 | #define MPI2_MFGPAGE_DEVID_SAS2208_8 (0x0087) | ||
| 376 | |||
| 352 | 377 | ||
| 353 | /* Manufacturing Page 0 */ | 378 | /* Manufacturing Page 0 */ |
| 354 | 379 | ||
| @@ -787,6 +812,56 @@ typedef struct _MPI2_CONFIG_PAGE_IO_UNIT_6 { | |||
| 787 | #define MPI2_IOUNITPAGE6_FLAGS_ENABLE_RAID_ACCELERATOR (0x0001) | 812 | #define MPI2_IOUNITPAGE6_FLAGS_ENABLE_RAID_ACCELERATOR (0x0001) |
| 788 | 813 | ||
| 789 | 814 | ||
| 815 | /* IO Unit Page 7 */ | ||
| 816 | |||
| 817 | typedef struct _MPI2_CONFIG_PAGE_IO_UNIT_7 { | ||
| 818 | MPI2_CONFIG_PAGE_HEADER Header; /* 0x00 */ | ||
| 819 | U16 Reserved1; /* 0x04 */ | ||
| 820 | U8 PCIeWidth; /* 0x06 */ | ||
| 821 | U8 PCIeSpeed; /* 0x07 */ | ||
| 822 | U32 ProcessorState; /* 0x08 */ | ||
| 823 | U32 Reserved2; /* 0x0C */ | ||
| 824 | U16 IOCTemperature; /* 0x10 */ | ||
| 825 | U8 IOCTemperatureUnits; /* 0x12 */ | ||
| 826 | U8 IOCSpeed; /* 0x13 */ | ||
| 827 | U32 Reserved3; /* 0x14 */ | ||
| 828 | } MPI2_CONFIG_PAGE_IO_UNIT_7, MPI2_POINTER PTR_MPI2_CONFIG_PAGE_IO_UNIT_7, | ||
| 829 | Mpi2IOUnitPage7_t, MPI2_POINTER pMpi2IOUnitPage7_t; | ||
| 830 | |||
| 831 | #define MPI2_IOUNITPAGE7_PAGEVERSION (0x00) | ||
| 832 | |||
| 833 | /* defines for IO Unit Page 7 PCIeWidth field */ | ||
| 834 | #define MPI2_IOUNITPAGE7_PCIE_WIDTH_X1 (0x01) | ||
| 835 | #define MPI2_IOUNITPAGE7_PCIE_WIDTH_X2 (0x02) | ||
| 836 | #define MPI2_IOUNITPAGE7_PCIE_WIDTH_X4 (0x04) | ||
| 837 | #define MPI2_IOUNITPAGE7_PCIE_WIDTH_X8 (0x08) | ||
| 838 | |||
| 839 | /* defines for IO Unit Page 7 PCIeSpeed field */ | ||
| 840 | #define MPI2_IOUNITPAGE7_PCIE_SPEED_2_5_GBPS (0x00) | ||
| 841 | #define MPI2_IOUNITPAGE7_PCIE_SPEED_5_0_GBPS (0x01) | ||
| 842 | #define MPI2_IOUNITPAGE7_PCIE_SPEED_8_0_GBPS (0x02) | ||
| 843 | |||
| 844 | /* defines for IO Unit Page 7 ProcessorState field */ | ||
| 845 | #define MPI2_IOUNITPAGE7_PSTATE_MASK_SECOND (0x0000000F) | ||
| 846 | #define MPI2_IOUNITPAGE7_PSTATE_SHIFT_SECOND (0) | ||
| 847 | |||
| 848 | #define MPI2_IOUNITPAGE7_PSTATE_NOT_PRESENT (0x00) | ||
| 849 | #define MPI2_IOUNITPAGE7_PSTATE_DISABLED (0x01) | ||
| 850 | #define MPI2_IOUNITPAGE7_PSTATE_ENABLED (0x02) | ||
| 851 | |||
| 852 | /* defines for IO Unit Page 7 IOCTemperatureUnits field */ | ||
| 853 | #define MPI2_IOUNITPAGE7_IOC_TEMP_NOT_PRESENT (0x00) | ||
| 854 | #define MPI2_IOUNITPAGE7_IOC_TEMP_FAHRENHEIT (0x01) | ||
| 855 | #define MPI2_IOUNITPAGE7_IOC_TEMP_CELSIUS (0x02) | ||
| 856 | |||
| 857 | /* defines for IO Unit Page 7 IOCSpeed field */ | ||
| 858 | #define MPI2_IOUNITPAGE7_IOC_SPEED_FULL (0x01) | ||
| 859 | #define MPI2_IOUNITPAGE7_IOC_SPEED_HALF (0x02) | ||
| 860 | #define MPI2_IOUNITPAGE7_IOC_SPEED_QUARTER (0x04) | ||
| 861 | #define MPI2_IOUNITPAGE7_IOC_SPEED_EIGHTH (0x08) | ||
| 862 | |||
| 863 | |||
| 864 | |||
| 790 | /**************************************************************************** | 865 | /**************************************************************************** |
| 791 | * IOC Config Pages | 866 | * IOC Config Pages |
| 792 | ****************************************************************************/ | 867 | ****************************************************************************/ |
| @@ -1470,6 +1545,12 @@ typedef struct _MPI2_CONFIG_PAGE_RD_PDISK_1 | |||
| 1470 | 1545 | ||
| 1471 | /* values for PhyInfo fields */ | 1546 | /* values for PhyInfo fields */ |
| 1472 | #define MPI2_SAS_PHYINFO_PHY_VACANT (0x80000000) | 1547 | #define MPI2_SAS_PHYINFO_PHY_VACANT (0x80000000) |
| 1548 | |||
| 1549 | #define MPI2_SAS_PHYINFO_PHY_POWER_CONDITION_MASK (0x18000000) | ||
| 1550 | #define MPI2_SAS_PHYINFO_PHY_POWER_ACTIVE (0x00000000) | ||
| 1551 | #define MPI2_SAS_PHYINFO_PHY_POWER_PARTIAL (0x08000000) | ||
| 1552 | #define MPI2_SAS_PHYINFO_PHY_POWER_SLUMBER (0x10000000) | ||
| 1553 | |||
| 1473 | #define MPI2_SAS_PHYINFO_CHANGED_REQ_INSIDE_ZPSDS (0x04000000) | 1554 | #define MPI2_SAS_PHYINFO_CHANGED_REQ_INSIDE_ZPSDS (0x04000000) |
| 1474 | #define MPI2_SAS_PHYINFO_INSIDE_ZPSDS_PERSISTENT (0x02000000) | 1555 | #define MPI2_SAS_PHYINFO_INSIDE_ZPSDS_PERSISTENT (0x02000000) |
| 1475 | #define MPI2_SAS_PHYINFO_REQ_INSIDE_ZPSDS (0x01000000) | 1556 | #define MPI2_SAS_PHYINFO_REQ_INSIDE_ZPSDS (0x01000000) |
| @@ -1682,11 +1763,11 @@ typedef struct _MPI2_CONFIG_PAGE_SASIOUNIT_1 | |||
| 1682 | /* values for SAS IO Unit Page 1 PortFlags */ | 1763 | /* values for SAS IO Unit Page 1 PortFlags */ |
| 1683 | #define MPI2_SASIOUNIT1_PORT_FLAGS_AUTO_PORT_CONFIG (0x01) | 1764 | #define MPI2_SASIOUNIT1_PORT_FLAGS_AUTO_PORT_CONFIG (0x01) |
| 1684 | 1765 | ||
| 1685 | /* values for SAS IO Unit Page 2 PhyFlags */ | 1766 | /* values for SAS IO Unit Page 1 PhyFlags */ |
| 1686 | #define MPI2_SASIOUNIT1_PHYFLAGS_ZONING_ENABLE (0x10) | 1767 | #define MPI2_SASIOUNIT1_PHYFLAGS_ZONING_ENABLE (0x10) |
| 1687 | #define MPI2_SASIOUNIT1_PHYFLAGS_PHY_DISABLE (0x08) | 1768 | #define MPI2_SASIOUNIT1_PHYFLAGS_PHY_DISABLE (0x08) |
| 1688 | 1769 | ||
| 1689 | /* values for SAS IO Unit Page 0 MaxMinLinkRate */ | 1770 | /* values for SAS IO Unit Page 1 MaxMinLinkRate */ |
| 1690 | #define MPI2_SASIOUNIT1_MAX_RATE_MASK (0xF0) | 1771 | #define MPI2_SASIOUNIT1_MAX_RATE_MASK (0xF0) |
| 1691 | #define MPI2_SASIOUNIT1_MAX_RATE_1_5 (0x80) | 1772 | #define MPI2_SASIOUNIT1_MAX_RATE_1_5 (0x80) |
| 1692 | #define MPI2_SASIOUNIT1_MAX_RATE_3_0 (0x90) | 1773 | #define MPI2_SASIOUNIT1_MAX_RATE_3_0 (0x90) |
| @@ -1745,6 +1826,74 @@ typedef struct _MPI2_CONFIG_PAGE_SASIOUNIT_4 | |||
| 1745 | #define MPI2_SASIOUNIT4_PHY_SPINUP_GROUP_MASK (0x03) | 1826 | #define MPI2_SASIOUNIT4_PHY_SPINUP_GROUP_MASK (0x03) |
| 1746 | 1827 | ||
| 1747 | 1828 | ||
| 1829 | /* SAS IO Unit Page 5 */ | ||
| 1830 | |||
| 1831 | typedef struct _MPI2_SAS_IO_UNIT5_PHY_PM_SETTINGS { | ||
| 1832 | U8 ControlFlags; /* 0x00 */ | ||
| 1833 | U8 Reserved1; /* 0x01 */ | ||
| 1834 | U16 InactivityTimerExponent; /* 0x02 */ | ||
| 1835 | U8 SATAPartialTimeout; /* 0x04 */ | ||
| 1836 | U8 Reserved2; /* 0x05 */ | ||
| 1837 | U8 SATASlumberTimeout; /* 0x06 */ | ||
| 1838 | U8 Reserved3; /* 0x07 */ | ||
| 1839 | U8 SASPartialTimeout; /* 0x08 */ | ||
| 1840 | U8 Reserved4; /* 0x09 */ | ||
| 1841 | U8 SASSlumberTimeout; /* 0x0A */ | ||
| 1842 | U8 Reserved5; /* 0x0B */ | ||
| 1843 | } MPI2_SAS_IO_UNIT5_PHY_PM_SETTINGS, | ||
| 1844 | MPI2_POINTER PTR_MPI2_SAS_IO_UNIT5_PHY_PM_SETTINGS, | ||
| 1845 | Mpi2SasIOUnit5PhyPmSettings_t, MPI2_POINTER pMpi2SasIOUnit5PhyPmSettings_t; | ||
| 1846 | |||
| 1847 | /* defines for ControlFlags field */ | ||
| 1848 | #define MPI2_SASIOUNIT5_CONTROL_SAS_SLUMBER_ENABLE (0x08) | ||
| 1849 | #define MPI2_SASIOUNIT5_CONTROL_SAS_PARTIAL_ENABLE (0x04) | ||
| 1850 | #define MPI2_SASIOUNIT5_CONTROL_SATA_SLUMBER_ENABLE (0x02) | ||
| 1851 | #define MPI2_SASIOUNIT5_CONTROL_SATA_PARTIAL_ENABLE (0x01) | ||
| 1852 | |||
| 1853 | /* defines for InactivityTimerExponent field */ | ||
| 1854 | #define MPI2_SASIOUNIT5_ITE_MASK_SAS_SLUMBER (0x7000) | ||
| 1855 | #define MPI2_SASIOUNIT5_ITE_SHIFT_SAS_SLUMBER (12) | ||
| 1856 | #define MPI2_SASIOUNIT5_ITE_MASK_SAS_PARTIAL (0x0700) | ||
| 1857 | #define MPI2_SASIOUNIT5_ITE_SHIFT_SAS_PARTIAL (8) | ||
| 1858 | #define MPI2_SASIOUNIT5_ITE_MASK_SATA_SLUMBER (0x0070) | ||
| 1859 | #define MPI2_SASIOUNIT5_ITE_SHIFT_SATA_SLUMBER (4) | ||
| 1860 | #define MPI2_SASIOUNIT5_ITE_MASK_SATA_PARTIAL (0x0007) | ||
| 1861 | #define MPI2_SASIOUNIT5_ITE_SHIFT_SATA_PARTIAL (0) | ||
| 1862 | |||
| 1863 | #define MPI2_SASIOUNIT5_ITE_TEN_SECONDS (7) | ||
| 1864 | #define MPI2_SASIOUNIT5_ITE_ONE_SECOND (6) | ||
| 1865 | #define MPI2_SASIOUNIT5_ITE_HUNDRED_MILLISECONDS (5) | ||
| 1866 | #define MPI2_SASIOUNIT5_ITE_TEN_MILLISECONDS (4) | ||
| 1867 | #define MPI2_SASIOUNIT5_ITE_ONE_MILLISECOND (3) | ||
| 1868 | #define MPI2_SASIOUNIT5_ITE_HUNDRED_MICROSECONDS (2) | ||
| 1869 | #define MPI2_SASIOUNIT5_ITE_TEN_MICROSECONDS (1) | ||
| 1870 | #define MPI2_SASIOUNIT5_ITE_ONE_MICROSECOND (0) | ||
| 1871 | |||
| 1872 | /* | ||
| 1873 | * Host code (drivers, BIOS, utilities, etc.) should leave this define set to | ||
| 1874 | * one and check Header.ExtPageLength or NumPhys at runtime. | ||
| 1875 | */ | ||
| 1876 | #ifndef MPI2_SAS_IOUNIT5_PHY_MAX | ||
| 1877 | #define MPI2_SAS_IOUNIT5_PHY_MAX (1) | ||
| 1878 | #endif | ||
| 1879 | |||
| 1880 | typedef struct _MPI2_CONFIG_PAGE_SASIOUNIT_5 { | ||
| 1881 | MPI2_CONFIG_EXTENDED_PAGE_HEADER Header; /* 0x00 */ | ||
| 1882 | U8 NumPhys; /* 0x08 */ | ||
| 1883 | U8 Reserved1; /* 0x09 */ | ||
| 1884 | U16 Reserved2; /* 0x0A */ | ||
| 1885 | U32 Reserved3; /* 0x0C */ | ||
| 1886 | MPI2_SAS_IO_UNIT5_PHY_PM_SETTINGS SASPhyPowerManagementSettings | ||
| 1887 | [MPI2_SAS_IOUNIT5_PHY_MAX]; /* 0x10 */ | ||
| 1888 | } MPI2_CONFIG_PAGE_SASIOUNIT_5, | ||
| 1889 | MPI2_POINTER PTR_MPI2_CONFIG_PAGE_SASIOUNIT_5, | ||
| 1890 | Mpi2SasIOUnitPage5_t, MPI2_POINTER pMpi2SasIOUnitPage5_t; | ||
| 1891 | |||
| 1892 | #define MPI2_SASIOUNITPAGE5_PAGEVERSION (0x00) | ||
| 1893 | |||
| 1894 | |||
| 1895 | |||
| 1896 | |||
| 1748 | /**************************************************************************** | 1897 | /**************************************************************************** |
| 1749 | * SAS Expander Config Pages | 1898 | * SAS Expander Config Pages |
| 1750 | ****************************************************************************/ | 1899 | ****************************************************************************/ |
| @@ -1927,6 +2076,8 @@ typedef struct _MPI2_CONFIG_PAGE_SAS_DEV_0 | |||
| 1927 | /* see mpi2_sas.h for values for SAS Device Page 0 DeviceInfo values */ | 2076 | /* see mpi2_sas.h for values for SAS Device Page 0 DeviceInfo values */ |
| 1928 | 2077 | ||
| 1929 | /* values for SAS Device Page 0 Flags field */ | 2078 | /* values for SAS Device Page 0 Flags field */ |
| 2079 | #define MPI2_SAS_DEVICE0_FLAGS_SLUMBER_PM_CAPABLE (0x1000) | ||
| 2080 | #define MPI2_SAS_DEVICE0_FLAGS_PARTIAL_PM_CAPABLE (0x0800) | ||
| 1930 | #define MPI2_SAS_DEVICE0_FLAGS_SATA_ASYNCHRONOUS_NOTIFY (0x0400) | 2081 | #define MPI2_SAS_DEVICE0_FLAGS_SATA_ASYNCHRONOUS_NOTIFY (0x0400) |
| 1931 | #define MPI2_SAS_DEVICE0_FLAGS_SATA_SW_PRESERVE (0x0200) | 2082 | #define MPI2_SAS_DEVICE0_FLAGS_SATA_SW_PRESERVE (0x0200) |
| 1932 | #define MPI2_SAS_DEVICE0_FLAGS_UNSUPPORTED_DEVICE (0x0100) | 2083 | #define MPI2_SAS_DEVICE0_FLAGS_UNSUPPORTED_DEVICE (0x0100) |
| @@ -2343,5 +2494,122 @@ typedef struct _MPI2_CONFIG_PAGE_DRIVER_MAPPING_0 | |||
| 2343 | #define MPI2_DRVMAP0_MAPINFO_MISSING_MASK (0x000F) | 2494 | #define MPI2_DRVMAP0_MAPINFO_MISSING_MASK (0x000F) |
| 2344 | 2495 | ||
| 2345 | 2496 | ||
| 2497 | /**************************************************************************** | ||
| 2498 | * Ethernet Config Pages | ||
| 2499 | ****************************************************************************/ | ||
| 2500 | |||
| 2501 | /* Ethernet Page 0 */ | ||
| 2502 | |||
| 2503 | /* IP address (union of IPv4 and IPv6) */ | ||
| 2504 | typedef union _MPI2_ETHERNET_IP_ADDR { | ||
| 2505 | U32 IPv4Addr; | ||
| 2506 | U32 IPv6Addr[4]; | ||
| 2507 | } MPI2_ETHERNET_IP_ADDR, MPI2_POINTER PTR_MPI2_ETHERNET_IP_ADDR, | ||
| 2508 | Mpi2EthernetIpAddr_t, MPI2_POINTER pMpi2EthernetIpAddr_t; | ||
| 2509 | |||
| 2510 | #define MPI2_ETHERNET_HOST_NAME_LENGTH (32) | ||
| 2511 | |||
| 2512 | typedef struct _MPI2_CONFIG_PAGE_ETHERNET_0 { | ||
| 2513 | MPI2_CONFIG_EXTENDED_PAGE_HEADER Header; /* 0x00 */ | ||
| 2514 | U8 NumInterfaces; /* 0x08 */ | ||
| 2515 | U8 Reserved0; /* 0x09 */ | ||
| 2516 | U16 Reserved1; /* 0x0A */ | ||
| 2517 | U32 Status; /* 0x0C */ | ||
| 2518 | U8 MediaState; /* 0x10 */ | ||
| 2519 | U8 Reserved2; /* 0x11 */ | ||
| 2520 | U16 Reserved3; /* 0x12 */ | ||
| 2521 | U8 MacAddress[6]; /* 0x14 */ | ||
| 2522 | U8 Reserved4; /* 0x1A */ | ||
| 2523 | U8 Reserved5; /* 0x1B */ | ||
| 2524 | MPI2_ETHERNET_IP_ADDR IpAddress; /* 0x1C */ | ||
| 2525 | MPI2_ETHERNET_IP_ADDR SubnetMask; /* 0x2C */ | ||
| 2526 | MPI2_ETHERNET_IP_ADDR GatewayIpAddress; /* 0x3C */ | ||
| 2527 | MPI2_ETHERNET_IP_ADDR DNS1IpAddress; /* 0x4C */ | ||
| 2528 | MPI2_ETHERNET_IP_ADDR DNS2IpAddress; /* 0x5C */ | ||
| 2529 | MPI2_ETHERNET_IP_ADDR DhcpIpAddress; /* 0x6C */ | ||
| 2530 | U8 HostName | ||
| 2531 | [MPI2_ETHERNET_HOST_NAME_LENGTH];/* 0x7C */ | ||
| 2532 | } MPI2_CONFIG_PAGE_ETHERNET_0, MPI2_POINTER PTR_MPI2_CONFIG_PAGE_ETHERNET_0, | ||
| 2533 | Mpi2EthernetPage0_t, MPI2_POINTER pMpi2EthernetPage0_t; | ||
| 2534 | |||
| 2535 | #define MPI2_ETHERNETPAGE0_PAGEVERSION (0x00) | ||
| 2536 | |||
| 2537 | /* values for Ethernet Page 0 Status field */ | ||
| 2538 | #define MPI2_ETHPG0_STATUS_IPV6_CAPABLE (0x80000000) | ||
| 2539 | #define MPI2_ETHPG0_STATUS_IPV4_CAPABLE (0x40000000) | ||
| 2540 | #define MPI2_ETHPG0_STATUS_CONSOLE_CONNECTED (0x20000000) | ||
| 2541 | #define MPI2_ETHPG0_STATUS_DEFAULT_IF (0x00000100) | ||
| 2542 | #define MPI2_ETHPG0_STATUS_FW_DWNLD_ENABLED (0x00000080) | ||
| 2543 | #define MPI2_ETHPG0_STATUS_TELNET_ENABLED (0x00000040) | ||
| 2544 | #define MPI2_ETHPG0_STATUS_SSH2_ENABLED (0x00000020) | ||
| 2545 | #define MPI2_ETHPG0_STATUS_DHCP_CLIENT_ENABLED (0x00000010) | ||
| 2546 | #define MPI2_ETHPG0_STATUS_IPV6_ENABLED (0x00000008) | ||
| 2547 | #define MPI2_ETHPG0_STATUS_IPV4_ENABLED (0x00000004) | ||
| 2548 | #define MPI2_ETHPG0_STATUS_IPV6_ADDRESSES (0x00000002) | ||
| 2549 | #define MPI2_ETHPG0_STATUS_ETH_IF_ENABLED (0x00000001) | ||
| 2550 | |||
| 2551 | /* values for Ethernet Page 0 MediaState field */ | ||
| 2552 | #define MPI2_ETHPG0_MS_DUPLEX_MASK (0x80) | ||
| 2553 | #define MPI2_ETHPG0_MS_HALF_DUPLEX (0x00) | ||
| 2554 | #define MPI2_ETHPG0_MS_FULL_DUPLEX (0x80) | ||
| 2555 | |||
| 2556 | #define MPI2_ETHPG0_MS_CONNECT_SPEED_MASK (0x07) | ||
| 2557 | #define MPI2_ETHPG0_MS_NOT_CONNECTED (0x00) | ||
| 2558 | #define MPI2_ETHPG0_MS_10MBIT (0x01) | ||
| 2559 | #define MPI2_ETHPG0_MS_100MBIT (0x02) | ||
| 2560 | #define MPI2_ETHPG0_MS_1GBIT (0x03) | ||
| 2561 | |||
| 2562 | |||
| 2563 | /* Ethernet Page 1 */ | ||
| 2564 | |||
| 2565 | typedef struct _MPI2_CONFIG_PAGE_ETHERNET_1 { | ||
| 2566 | MPI2_CONFIG_EXTENDED_PAGE_HEADER Header; /* 0x00 */ | ||
| 2567 | U32 Reserved0; /* 0x08 */ | ||
| 2568 | U32 Flags; /* 0x0C */ | ||
| 2569 | U8 MediaState; /* 0x10 */ | ||
| 2570 | U8 Reserved1; /* 0x11 */ | ||
| 2571 | U16 Reserved2; /* 0x12 */ | ||
| 2572 | U8 MacAddress[6]; /* 0x14 */ | ||
| 2573 | U8 Reserved3; /* 0x1A */ | ||
| 2574 | U8 Reserved4; /* 0x1B */ | ||
| 2575 | MPI2_ETHERNET_IP_ADDR StaticIpAddress; /* 0x1C */ | ||
| 2576 | MPI2_ETHERNET_IP_ADDR StaticSubnetMask; /* 0x2C */ | ||
| 2577 | MPI2_ETHERNET_IP_ADDR StaticGatewayIpAddress; /* 0x3C */ | ||
| 2578 | MPI2_ETHERNET_IP_ADDR StaticDNS1IpAddress; /* 0x4C */ | ||
| 2579 | MPI2_ETHERNET_IP_ADDR StaticDNS2IpAddress; /* 0x5C */ | ||
| 2580 | U32 Reserved5; /* 0x6C */ | ||
| 2581 | U32 Reserved6; /* 0x70 */ | ||
| 2582 | U32 Reserved7; /* 0x74 */ | ||
| 2583 | U32 Reserved8; /* 0x78 */ | ||
| 2584 | U8 HostName | ||
| 2585 | [MPI2_ETHERNET_HOST_NAME_LENGTH];/* 0x7C */ | ||
| 2586 | } MPI2_CONFIG_PAGE_ETHERNET_1, MPI2_POINTER PTR_MPI2_CONFIG_PAGE_ETHERNET_1, | ||
| 2587 | Mpi2EthernetPage1_t, MPI2_POINTER pMpi2EthernetPage1_t; | ||
| 2588 | |||
| 2589 | #define MPI2_ETHERNETPAGE1_PAGEVERSION (0x00) | ||
| 2590 | |||
| 2591 | /* values for Ethernet Page 1 Flags field */ | ||
| 2592 | #define MPI2_ETHPG1_FLAG_SET_DEFAULT_IF (0x00000100) | ||
| 2593 | #define MPI2_ETHPG1_FLAG_ENABLE_FW_DOWNLOAD (0x00000080) | ||
| 2594 | #define MPI2_ETHPG1_FLAG_ENABLE_TELNET (0x00000040) | ||
| 2595 | #define MPI2_ETHPG1_FLAG_ENABLE_SSH2 (0x00000020) | ||
| 2596 | #define MPI2_ETHPG1_FLAG_ENABLE_DHCP_CLIENT (0x00000010) | ||
| 2597 | #define MPI2_ETHPG1_FLAG_ENABLE_IPV6 (0x00000008) | ||
| 2598 | #define MPI2_ETHPG1_FLAG_ENABLE_IPV4 (0x00000004) | ||
| 2599 | #define MPI2_ETHPG1_FLAG_USE_IPV6_ADDRESSES (0x00000002) | ||
| 2600 | #define MPI2_ETHPG1_FLAG_ENABLE_ETH_IF (0x00000001) | ||
| 2601 | |||
| 2602 | /* values for Ethernet Page 1 MediaState field */ | ||
| 2603 | #define MPI2_ETHPG1_MS_DUPLEX_MASK (0x80) | ||
| 2604 | #define MPI2_ETHPG1_MS_HALF_DUPLEX (0x00) | ||
| 2605 | #define MPI2_ETHPG1_MS_FULL_DUPLEX (0x80) | ||
| 2606 | |||
| 2607 | #define MPI2_ETHPG1_MS_DATA_RATE_MASK (0x07) | ||
| 2608 | #define MPI2_ETHPG1_MS_DATA_RATE_AUTO (0x00) | ||
| 2609 | #define MPI2_ETHPG1_MS_DATA_RATE_10MBIT (0x01) | ||
| 2610 | #define MPI2_ETHPG1_MS_DATA_RATE_100MBIT (0x02) | ||
| 2611 | #define MPI2_ETHPG1_MS_DATA_RATE_1GBIT (0x03) | ||
| 2612 | |||
| 2613 | |||
| 2346 | #endif | 2614 | #endif |
| 2347 | 2615 | ||
