ixgbe: Add KR backplane support for x550em_a
Add support for x550em_a-based KR backplane devices. Signed-off-by: Mark Rustad <mark.d.rustad@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
200157c2e3
commit
f572b2c4c8
@ -131,6 +131,8 @@ static const struct pci_device_id ixgbe_pci_tbl[] = {
|
||||
{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},
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_X_SFP), board_X550EM_x},
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_A_KR), board_x550em_a },
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_A_KR_L), board_x550em_a },
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_A_SFP_N), board_x550em_a },
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_A_SGMII), board_x550em_a },
|
||||
{PCI_VDEVICE(INTEL, IXGBE_DEV_ID_X550EM_A_SGMII_L), board_x550em_a },
|
||||
|
@ -81,6 +81,8 @@
|
||||
#define IXGBE_DEV_ID_X550EM_X_SFP 0x15AC
|
||||
#define IXGBE_DEV_ID_X550EM_X_10G_T 0x15AD
|
||||
#define IXGBE_DEV_ID_X550EM_X_1G_T 0x15AE
|
||||
#define IXGBE_DEV_ID_X550EM_A_KR 0x15C2
|
||||
#define IXGBE_DEV_ID_X550EM_A_KR_L 0x15C3
|
||||
#define IXGBE_DEV_ID_X550EM_A_SFP_N 0x15C4
|
||||
#define IXGBE_DEV_ID_X550EM_A_SGMII 0x15C6
|
||||
#define IXGBE_DEV_ID_X550EM_A_SGMII_L 0x15C7
|
||||
|
@ -291,6 +291,8 @@ static s32 ixgbe_identify_phy_x550em(struct ixgbe_hw *hw)
|
||||
hw->phy.type = ixgbe_phy_x550em_kx4;
|
||||
break;
|
||||
case IXGBE_DEV_ID_X550EM_X_KR:
|
||||
case IXGBE_DEV_ID_X550EM_A_KR:
|
||||
case IXGBE_DEV_ID_X550EM_A_KR_L:
|
||||
hw->phy.type = ixgbe_phy_x550em_kr;
|
||||
break;
|
||||
case IXGBE_DEV_ID_X550EM_X_1G_T:
|
||||
@ -1984,13 +1986,17 @@ static s32 ixgbe_setup_kx4_x550em(struct ixgbe_hw *hw)
|
||||
return status;
|
||||
}
|
||||
|
||||
/** ixgbe_setup_kr_x550em - Configure the KR PHY.
|
||||
* @hw: pointer to hardware structure
|
||||
/**
|
||||
* ixgbe_setup_kr_x550em - Configure the KR PHY
|
||||
* @hw: pointer to hardware structure
|
||||
*
|
||||
* Configures the integrated KR PHY.
|
||||
* Configures the integrated KR PHY for X550EM_x.
|
||||
**/
|
||||
static s32 ixgbe_setup_kr_x550em(struct ixgbe_hw *hw)
|
||||
{
|
||||
if (hw->mac.type != ixgbe_mac_X550EM_x)
|
||||
return 0;
|
||||
|
||||
return ixgbe_setup_kr_speed_x550em(hw, hw->phy.autoneg_advertised);
|
||||
}
|
||||
|
||||
@ -2196,7 +2202,9 @@ static s32 ixgbe_setup_fc_x550em(struct ixgbe_hw *hw)
|
||||
return IXGBE_ERR_CONFIG;
|
||||
}
|
||||
|
||||
if (hw->device_id != IXGBE_DEV_ID_X550EM_X_KR)
|
||||
if (hw->device_id != IXGBE_DEV_ID_X550EM_X_KR &&
|
||||
hw->device_id != IXGBE_DEV_ID_X550EM_A_KR &&
|
||||
hw->device_id != IXGBE_DEV_ID_X550EM_A_KR_L)
|
||||
return 0;
|
||||
|
||||
rc = hw->mac.ops.read_iosf_sb_reg(hw,
|
||||
@ -2437,6 +2445,8 @@ static enum ixgbe_media_type ixgbe_get_media_type_X550em(struct ixgbe_hw *hw)
|
||||
/* Fallthrough */
|
||||
case IXGBE_DEV_ID_X550EM_X_KR:
|
||||
case IXGBE_DEV_ID_X550EM_X_KX4:
|
||||
case IXGBE_DEV_ID_X550EM_A_KR:
|
||||
case IXGBE_DEV_ID_X550EM_A_KR_L:
|
||||
media_type = ixgbe_media_type_backplane;
|
||||
break;
|
||||
case IXGBE_DEV_ID_X550EM_X_SFP:
|
||||
|
Loading…
Reference in New Issue
Block a user