diff options
author | Carolyn Wyborny <carolyn.wyborny@intel.com> | 2012-04-06 19:25:19 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-05-12 16:17:13 -0400 |
commit | f96a8a0b78548c0ec06b0b4b438db6ee895d67e9 (patch) | |
tree | b1e6cc64dd55fc46cfb8877aa94db6a7940c1327 /drivers/net/ethernet/intel/igb/e1000_defines.h | |
parent | da02cde1c1ffb798df6159a2252653a9becea51a (diff) |
igb: Add Support for new i210/i211 devices.
This patch adds new initialization functions and device support
for i210 and i211 devices.
Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>
Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/e1000_defines.h')
-rw-r--r-- | drivers/net/ethernet/intel/igb/e1000_defines.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igb/e1000_defines.h b/drivers/net/ethernet/intel/igb/e1000_defines.h index 89eb1f85b9fa..6409f85632f5 100644 --- a/drivers/net/ethernet/intel/igb/e1000_defines.h +++ b/drivers/net/ethernet/intel/igb/e1000_defines.h | |||
@@ -458,6 +458,7 @@ | |||
458 | #define E1000_ERR_INVALID_ARGUMENT 16 | 458 | #define E1000_ERR_INVALID_ARGUMENT 16 |
459 | #define E1000_ERR_NO_SPACE 17 | 459 | #define E1000_ERR_NO_SPACE 17 |
460 | #define E1000_ERR_NVM_PBA_SECTION 18 | 460 | #define E1000_ERR_NVM_PBA_SECTION 18 |
461 | #define E1000_ERR_INVM_VALUE_NOT_FOUND 19 | ||
461 | 462 | ||
462 | /* Loop limit on how long we wait for auto-negotiation to complete */ | 463 | /* Loop limit on how long we wait for auto-negotiation to complete */ |
463 | #define COPPER_LINK_UP_LIMIT 10 | 464 | #define COPPER_LINK_UP_LIMIT 10 |
@@ -595,6 +596,25 @@ | |||
595 | #define E1000_EECD_AUTO_RD 0x00000200 /* NVM Auto Read done */ | 596 | #define E1000_EECD_AUTO_RD 0x00000200 /* NVM Auto Read done */ |
596 | #define E1000_EECD_SIZE_EX_MASK 0x00007800 /* NVM Size */ | 597 | #define E1000_EECD_SIZE_EX_MASK 0x00007800 /* NVM Size */ |
597 | #define E1000_EECD_SIZE_EX_SHIFT 11 | 598 | #define E1000_EECD_SIZE_EX_SHIFT 11 |
599 | #define E1000_EECD_FLUPD_I210 0x00800000 /* Update FLASH */ | ||
600 | #define E1000_EECD_FLUDONE_I210 0x04000000 /* Update FLASH done*/ | ||
601 | #define E1000_FLUDONE_ATTEMPTS 20000 | ||
602 | #define E1000_EERD_EEWR_MAX_COUNT 512 /* buffered EEPROM words rw */ | ||
603 | #define E1000_I210_FIFO_SEL_RX 0x00 | ||
604 | #define E1000_I210_FIFO_SEL_TX_QAV(_i) (0x02 + (_i)) | ||
605 | #define E1000_I210_FIFO_SEL_TX_LEGACY E1000_I210_FIFO_SEL_TX_QAV(0) | ||
606 | #define E1000_I210_FIFO_SEL_BMC2OS_TX 0x06 | ||
607 | #define E1000_I210_FIFO_SEL_BMC2OS_RX 0x01 | ||
608 | #define E1000_EECD_FLUPD_I210 0x00800000 /* Update FLASH */ | ||
609 | #define E1000_EECD_FLUDONE_I210 0x04000000 /* Update FLASH done*/ | ||
610 | #define E1000_FLUDONE_ATTEMPTS 20000 | ||
611 | #define E1000_EERD_EEWR_MAX_COUNT 512 /* buffered EEPROM words rw */ | ||
612 | #define E1000_I210_FIFO_SEL_RX 0x00 | ||
613 | #define E1000_I210_FIFO_SEL_TX_QAV(_i) (0x02 + (_i)) | ||
614 | #define E1000_I210_FIFO_SEL_TX_LEGACY E1000_I210_FIFO_SEL_TX_QAV(0) | ||
615 | #define E1000_I210_FIFO_SEL_BMC2OS_TX 0x06 | ||
616 | #define E1000_I210_FIFO_SEL_BMC2OS_RX 0x01 | ||
617 | |||
598 | 618 | ||
599 | /* Offset to data in NVM read/write registers */ | 619 | /* Offset to data in NVM read/write registers */ |
600 | #define E1000_NVM_RW_REG_DATA 16 | 620 | #define E1000_NVM_RW_REG_DATA 16 |
@@ -613,6 +633,16 @@ | |||
613 | #define NVM_CHECKSUM_REG 0x003F | 633 | #define NVM_CHECKSUM_REG 0x003F |
614 | #define NVM_COMPATIBILITY_REG_3 0x0003 | 634 | #define NVM_COMPATIBILITY_REG_3 0x0003 |
615 | #define NVM_COMPATIBILITY_BIT_MASK 0x8000 | 635 | #define NVM_COMPATIBILITY_BIT_MASK 0x8000 |
636 | #define NVM_MAC_ADDR 0x0000 | ||
637 | #define NVM_SUB_DEV_ID 0x000B | ||
638 | #define NVM_SUB_VEN_ID 0x000C | ||
639 | #define NVM_DEV_ID 0x000D | ||
640 | #define NVM_VEN_ID 0x000E | ||
641 | #define NVM_INIT_CTRL_2 0x000F | ||
642 | #define NVM_INIT_CTRL_4 0x0013 | ||
643 | #define NVM_LED_1_CFG 0x001C | ||
644 | #define NVM_LED_0_2_CFG 0x001F | ||
645 | |||
616 | 646 | ||
617 | #define E1000_NVM_CFG_DONE_PORT_0 0x040000 /* MNG config cycle done */ | 647 | #define E1000_NVM_CFG_DONE_PORT_0 0x040000 /* MNG config cycle done */ |
618 | #define E1000_NVM_CFG_DONE_PORT_1 0x080000 /* ...for second port */ | 648 | #define E1000_NVM_CFG_DONE_PORT_1 0x080000 /* ...for second port */ |
@@ -639,6 +669,7 @@ | |||
639 | 669 | ||
640 | #define NVM_PBA_OFFSET_0 8 | 670 | #define NVM_PBA_OFFSET_0 8 |
641 | #define NVM_PBA_OFFSET_1 9 | 671 | #define NVM_PBA_OFFSET_1 9 |
672 | #define NVM_RESERVED_WORD 0xFFFF | ||
642 | #define NVM_PBA_PTR_GUARD 0xFAFA | 673 | #define NVM_PBA_PTR_GUARD 0xFAFA |
643 | #define NVM_WORD_SIZE_BASE_SHIFT 6 | 674 | #define NVM_WORD_SIZE_BASE_SHIFT 6 |
644 | 675 | ||
@@ -696,6 +727,7 @@ | |||
696 | #define I82580_I_PHY_ID 0x015403A0 | 727 | #define I82580_I_PHY_ID 0x015403A0 |
697 | #define I350_I_PHY_ID 0x015403B0 | 728 | #define I350_I_PHY_ID 0x015403B0 |
698 | #define M88_VENDOR 0x0141 | 729 | #define M88_VENDOR 0x0141 |
730 | #define I210_I_PHY_ID 0x01410C00 | ||
699 | 731 | ||
700 | /* M88E1000 Specific Registers */ | 732 | /* M88E1000 Specific Registers */ |
701 | #define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */ | 733 | #define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */ |
@@ -815,6 +847,7 @@ | |||
815 | #define E1000_IPCNFG_EEE_100M_AN 0x00000004 /* EEE Enable 100M AN */ | 847 | #define E1000_IPCNFG_EEE_100M_AN 0x00000004 /* EEE Enable 100M AN */ |
816 | #define E1000_EEER_TX_LPI_EN 0x00010000 /* EEE Tx LPI Enable */ | 848 | #define E1000_EEER_TX_LPI_EN 0x00010000 /* EEE Tx LPI Enable */ |
817 | #define E1000_EEER_RX_LPI_EN 0x00020000 /* EEE Rx LPI Enable */ | 849 | #define E1000_EEER_RX_LPI_EN 0x00020000 /* EEE Rx LPI Enable */ |
850 | #define E1000_EEER_FRC_AN 0x10000000 /* Enable EEE in loopback */ | ||
818 | #define E1000_EEER_LPI_FC 0x00040000 /* EEE Enable on FC */ | 851 | #define E1000_EEER_LPI_FC 0x00040000 /* EEE Enable on FC */ |
819 | 852 | ||
820 | /* SerDes Control */ | 853 | /* SerDes Control */ |