igb: Add device support for flashless SKU of i210 device
This patch adds the specific device id support for versions of i210 that do not have flash installed. Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
Родитель
ef3a009297
Коммит
53b87ce37e
|
@ -483,6 +483,8 @@ static s32 igb_get_invariants_82575(struct e1000_hw *hw)
|
|||
case E1000_DEV_ID_I210_FIBER:
|
||||
case E1000_DEV_ID_I210_SERDES:
|
||||
case E1000_DEV_ID_I210_SGMII:
|
||||
case E1000_DEV_ID_I210_COPPER_FLASHLESS:
|
||||
case E1000_DEV_ID_I210_SERDES_FLASHLESS:
|
||||
mac->type = e1000_i210;
|
||||
break;
|
||||
case E1000_DEV_ID_I211_COPPER:
|
||||
|
|
|
@ -67,6 +67,8 @@ struct e1000_hw;
|
|||
#define E1000_DEV_ID_I210_FIBER 0x1536
|
||||
#define E1000_DEV_ID_I210_SERDES 0x1537
|
||||
#define E1000_DEV_ID_I210_SGMII 0x1538
|
||||
#define E1000_DEV_ID_I210_COPPER_FLASHLESS 0x157B
|
||||
#define E1000_DEV_ID_I210_SERDES_FLASHLESS 0x157C
|
||||
#define E1000_DEV_ID_I211_COPPER 0x1539
|
||||
#define E1000_DEV_ID_I354_BACKPLANE_1GBPS 0x1F40
|
||||
#define E1000_DEV_ID_I354_SGMII 0x1F41
|
||||
|
|
|
@ -1335,12 +1335,23 @@ static int igb_reg_test(struct igb_adapter *adapter, u64 *data)
|
|||
|
||||
static int igb_eeprom_test(struct igb_adapter *adapter, u64 *data)
|
||||
{
|
||||
struct e1000_hw *hw = &adapter->hw;
|
||||
|
||||
*data = 0;
|
||||
|
||||
/* Validate eeprom on all parts but i211 */
|
||||
if (adapter->hw.mac.type != e1000_i211) {
|
||||
/* Validate eeprom on all parts but flashless */
|
||||
switch (hw->mac.type) {
|
||||
case e1000_i210:
|
||||
case e1000_i211:
|
||||
if (igb_get_flash_presence_i210(hw)) {
|
||||
if (adapter->hw.nvm.ops.validate(&adapter->hw) < 0)
|
||||
*data = 2;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (adapter->hw.nvm.ops.validate(&adapter->hw) < 0)
|
||||
*data = 2;
|
||||
break;
|
||||
}
|
||||
|
||||
return *data;
|
||||
|
|
|
@ -85,6 +85,8 @@ static DEFINE_PCI_DEVICE_TABLE(igb_pci_tbl) = {
|
|||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I210_FIBER), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I210_SERDES), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I210_SGMII), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I210_COPPER_FLASHLESS), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I210_SERDES_FLASHLESS), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I350_COPPER), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I350_FIBER), board_82575 },
|
||||
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_I350_SERDES), board_82575 },
|
||||
|
|
Загрузка…
Ссылка в новой задаче