Commit deda562a authored by Don Skidmore's avatar Don Skidmore Committed by Jeff Kirsher

ixgbe: Add support for another X550 device.

This patch adds support for another 10baseT X550 device.
Signed-off-by: default avatarDon Skidmore <donald.c.skidmore@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent bef23de1
...@@ -133,6 +133,7 @@ static const struct pci_device_id ixgbe_pci_tbl[] = { ...@@ -133,6 +133,7 @@ static const struct pci_device_id ixgbe_pci_tbl[] = {
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550T), board_X550}, {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550T), board_X550},
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_KX4), board_X550EM_x}, {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_KX4), board_X550EM_x},
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_KR), board_X550EM_x}, {PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_KR), board_X550EM_x},
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_10G_T), board_X550EM_x},
/* required last entry */ /* required last entry */
{0, } {0, }
}; };
......
...@@ -347,6 +347,7 @@ static enum ixgbe_phy_type ixgbe_get_phy_type_from_id(u32 phy_id) ...@@ -347,6 +347,7 @@ static enum ixgbe_phy_type ixgbe_get_phy_type_from_id(u32 phy_id)
case TN1010_PHY_ID: case TN1010_PHY_ID:
phy_type = ixgbe_phy_tn; phy_type = ixgbe_phy_tn;
break; break;
case X550_PHY_ID:
case X540_PHY_ID: case X540_PHY_ID:
phy_type = ixgbe_phy_aq; phy_type = ixgbe_phy_aq;
break; break;
......
...@@ -1353,6 +1353,7 @@ struct ixgbe_thermal_sensor_data { ...@@ -1353,6 +1353,7 @@ struct ixgbe_thermal_sensor_data {
#define TN1010_PHY_ID 0x00A19410 #define TN1010_PHY_ID 0x00A19410
#define TNX_FW_REV 0xB #define TNX_FW_REV 0xB
#define X540_PHY_ID 0x01540200 #define X540_PHY_ID 0x01540200
#define X550_PHY_ID 0x01540220
#define X557_PHY_ID 0x01540240 #define X557_PHY_ID 0x01540240
#define QT2022_PHY_ID 0x0043A400 #define QT2022_PHY_ID 0x0043A400
#define ATH_PHY_ID 0x03429050 #define ATH_PHY_ID 0x03429050
......
...@@ -1561,6 +1561,7 @@ static s32 ixgbe_reset_hw_X550em(struct ixgbe_hw *hw) ...@@ -1561,6 +1561,7 @@ static s32 ixgbe_reset_hw_X550em(struct ixgbe_hw *hw)
s32 status; s32 status;
u32 ctrl = 0; u32 ctrl = 0;
u32 i; u32 i;
u32 hlreg0;
bool link_up = false; bool link_up = false;
/* Call adapter stop to disable Tx/Rx and clear interrupts */ /* Call adapter stop to disable Tx/Rx and clear interrupts */
...@@ -1645,6 +1646,12 @@ static s32 ixgbe_reset_hw_X550em(struct ixgbe_hw *hw) ...@@ -1645,6 +1646,12 @@ static s32 ixgbe_reset_hw_X550em(struct ixgbe_hw *hw)
hw->mac.num_rar_entries = 128; hw->mac.num_rar_entries = 128;
hw->mac.ops.init_rx_addrs(hw); hw->mac.ops.init_rx_addrs(hw);
if (hw->device_id == IXGBE_DEV_ID_X550EM_X_10G_T) {
hlreg0 = IXGBE_READ_REG(hw, IXGBE_HLREG0);
hlreg0 &= ~IXGBE_HLREG0_MDCSPD;
IXGBE_WRITE_REG(hw, IXGBE_HLREG0, hlreg0);
}
if (hw->device_id == IXGBE_DEV_ID_X550EM_X_SFP) if (hw->device_id == IXGBE_DEV_ID_X550EM_X_SFP)
ixgbe_setup_mux_ctl(hw); ixgbe_setup_mux_ctl(hw);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment