Commit 99af4729 authored by Akeem G Abodunrin's avatar Akeem G Abodunrin Committed by Jeff Kirsher

igb: New PHY_ID for i354 device

This patch changes PHY_ID for i354 device, now using M88E1543
instead of M88E1545.
Signed-off-by: default avatarAkeem G Abodunrin <akeem.g.abodunrin@intel.com>
Tested-by: default avatarAaron Brown <aaron.f.brown@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent aa9b8cc4
...@@ -176,7 +176,7 @@ static s32 igb_init_phy_params_82575(struct e1000_hw *hw) ...@@ -176,7 +176,7 @@ static s32 igb_init_phy_params_82575(struct e1000_hw *hw)
/* Verify phy id and set remaining function pointers */ /* Verify phy id and set remaining function pointers */
switch (phy->id) { switch (phy->id) {
case M88E1545_E_PHY_ID: case M88E1543_E_PHY_ID:
case I347AT4_E_PHY_ID: case I347AT4_E_PHY_ID:
case M88E1112_E_PHY_ID: case M88E1112_E_PHY_ID:
case M88E1111_I_PHY_ID: case M88E1111_I_PHY_ID:
...@@ -1448,7 +1448,7 @@ static s32 igb_setup_copper_link_82575(struct e1000_hw *hw) ...@@ -1448,7 +1448,7 @@ static s32 igb_setup_copper_link_82575(struct e1000_hw *hw)
switch (hw->phy.id) { switch (hw->phy.id) {
case I347AT4_E_PHY_ID: case I347AT4_E_PHY_ID:
case M88E1112_E_PHY_ID: case M88E1112_E_PHY_ID:
case M88E1545_E_PHY_ID: case M88E1543_E_PHY_ID:
case I210_I_PHY_ID: case I210_I_PHY_ID:
ret_val = igb_copper_link_setup_m88_gen2(hw); ret_val = igb_copper_link_setup_m88_gen2(hw);
break; break;
...@@ -2477,28 +2477,28 @@ s32 igb_set_eee_i354(struct e1000_hw *hw) ...@@ -2477,28 +2477,28 @@ s32 igb_set_eee_i354(struct e1000_hw *hw)
u16 phy_data; u16 phy_data;
if ((hw->phy.media_type != e1000_media_type_copper) || if ((hw->phy.media_type != e1000_media_type_copper) ||
(phy->id != M88E1545_E_PHY_ID)) (phy->id != M88E1543_E_PHY_ID))
goto out; goto out;
if (!hw->dev_spec._82575.eee_disable) { if (!hw->dev_spec._82575.eee_disable) {
/* Switch to PHY page 18. */ /* Switch to PHY page 18. */
ret_val = phy->ops.write_reg(hw, E1000_M88E1545_PAGE_ADDR, 18); ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 18);
if (ret_val) if (ret_val)
goto out; goto out;
ret_val = phy->ops.read_reg(hw, E1000_M88E1545_EEE_CTRL_1, ret_val = phy->ops.read_reg(hw, E1000_M88E1543_EEE_CTRL_1,
&phy_data); &phy_data);
if (ret_val) if (ret_val)
goto out; goto out;
phy_data |= E1000_M88E1545_EEE_CTRL_1_MS; phy_data |= E1000_M88E1543_EEE_CTRL_1_MS;
ret_val = phy->ops.write_reg(hw, E1000_M88E1545_EEE_CTRL_1, ret_val = phy->ops.write_reg(hw, E1000_M88E1543_EEE_CTRL_1,
phy_data); phy_data);
if (ret_val) if (ret_val)
goto out; goto out;
/* Return the PHY to page 0. */ /* Return the PHY to page 0. */
ret_val = phy->ops.write_reg(hw, E1000_M88E1545_PAGE_ADDR, 0); ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0);
if (ret_val) if (ret_val)
goto out; goto out;
...@@ -2549,7 +2549,7 @@ s32 igb_get_eee_status_i354(struct e1000_hw *hw, bool *status) ...@@ -2549,7 +2549,7 @@ s32 igb_get_eee_status_i354(struct e1000_hw *hw, bool *status)
/* Check if EEE is supported on this device. */ /* Check if EEE is supported on this device. */
if ((hw->phy.media_type != e1000_media_type_copper) || if ((hw->phy.media_type != e1000_media_type_copper) ||
(phy->id != M88E1545_E_PHY_ID)) (phy->id != M88E1543_E_PHY_ID))
goto out; goto out;
ret_val = igb_read_xmdio_reg(hw, E1000_PCS_STATUS_ADDR_I354, ret_val = igb_read_xmdio_reg(hw, E1000_PCS_STATUS_ADDR_I354,
......
...@@ -787,7 +787,7 @@ ...@@ -787,7 +787,7 @@
#define I350_I_PHY_ID 0x015403B0 #define I350_I_PHY_ID 0x015403B0
#define M88_VENDOR 0x0141 #define M88_VENDOR 0x0141
#define I210_I_PHY_ID 0x01410C00 #define I210_I_PHY_ID 0x01410C00
#define M88E1545_E_PHY_ID 0x01410EA0 #define M88E1543_E_PHY_ID 0x01410EA0
/* M88E1000 Specific Registers */ /* M88E1000 Specific Registers */
#define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */ #define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */
...@@ -909,9 +909,9 @@ ...@@ -909,9 +909,9 @@
#define E1000_EEE_LP_ADV_DEV_I210 7 /* EEE LP Adv Device */ #define E1000_EEE_LP_ADV_DEV_I210 7 /* EEE LP Adv Device */
#define E1000_EEE_LP_ADV_ADDR_I210 61 /* EEE LP Adv Register */ #define E1000_EEE_LP_ADV_ADDR_I210 61 /* EEE LP Adv Register */
#define E1000_MMDAC_FUNC_DATA 0x4000 /* Data, no post increment */ #define E1000_MMDAC_FUNC_DATA 0x4000 /* Data, no post increment */
#define E1000_M88E1545_PAGE_ADDR 0x16 /* Page Offset Register */ #define E1000_M88E1543_PAGE_ADDR 0x16 /* Page Offset Register */
#define E1000_M88E1545_EEE_CTRL_1 0x0 #define E1000_M88E1543_EEE_CTRL_1 0x0
#define E1000_M88E1545_EEE_CTRL_1_MS 0x0001 /* EEE Master/Slave */ #define E1000_M88E1543_EEE_CTRL_1_MS 0x0001 /* EEE Master/Slave */
#define E1000_EEE_ADV_DEV_I354 7 #define E1000_EEE_ADV_DEV_I354 7
#define E1000_EEE_ADV_ADDR_I354 60 #define E1000_EEE_ADV_ADDR_I354 60
#define E1000_EEE_ADV_100_SUPPORTED (1 << 1) /* 100BaseTx EEE Supported */ #define E1000_EEE_ADV_100_SUPPORTED (1 << 1) /* 100BaseTx EEE Supported */
......
...@@ -1806,7 +1806,7 @@ s32 igb_get_cable_length_m88_gen2(struct e1000_hw *hw) ...@@ -1806,7 +1806,7 @@ s32 igb_get_cable_length_m88_gen2(struct e1000_hw *hw)
phy->max_cable_length = phy_data / (is_cm ? 100 : 1); phy->max_cable_length = phy_data / (is_cm ? 100 : 1);
phy->cable_length = phy_data / (is_cm ? 100 : 1); phy->cable_length = phy_data / (is_cm ? 100 : 1);
break; break;
case M88E1545_E_PHY_ID: case M88E1543_E_PHY_ID:
case I347AT4_E_PHY_ID: case I347AT4_E_PHY_ID:
/* Remember the original page select and set it to 7 */ /* Remember the original page select and set it to 7 */
ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT, ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT,
......
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