aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkeem G Abodunrin <akeem.g.abodunrin@intel.com>2013-08-27 22:22:58 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2013-09-04 07:57:13 -0400
commit99af4729c4c5d67dafccb2a1ba29b95cf6f981c2 (patch)
treea36c0b89c1b68e943e2adce4a28d4a8a302cf791
parentaa9b8cc44409b140c0dadd3776e99220edf3384a (diff)
igb: New PHY_ID for i354 device
This patch changes PHY_ID for i354 device, now using M88E1543 instead of M88E1545. Signed-off-by: Akeem G Abodunrin <akeem.g.abodunrin@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--drivers/net/ethernet/intel/igb/e1000_82575.c18
-rw-r--r--drivers/net/ethernet/intel/igb/e1000_defines.h8
-rw-r--r--drivers/net/ethernet/intel/igb/e1000_phy.c2
3 files changed, 14 insertions, 14 deletions
diff --git a/drivers/net/ethernet/intel/igb/e1000_82575.c b/drivers/net/ethernet/intel/igb/e1000_82575.c
index d398fad6eedc..b0b33a17947b 100644
--- a/drivers/net/ethernet/intel/igb/e1000_82575.c
+++ b/drivers/net/ethernet/intel/igb/e1000_82575.c
@@ -176,7 +176,7 @@ static s32 igb_init_phy_params_82575(struct e1000_hw *hw)
176 176
177 /* Verify phy id and set remaining function pointers */ 177 /* Verify phy id and set remaining function pointers */
178 switch (phy->id) { 178 switch (phy->id) {
179 case M88E1545_E_PHY_ID: 179 case M88E1543_E_PHY_ID:
180 case I347AT4_E_PHY_ID: 180 case I347AT4_E_PHY_ID:
181 case M88E1112_E_PHY_ID: 181 case M88E1112_E_PHY_ID:
182 case M88E1111_I_PHY_ID: 182 case M88E1111_I_PHY_ID:
@@ -1448,7 +1448,7 @@ static s32 igb_setup_copper_link_82575(struct e1000_hw *hw)
1448 switch (hw->phy.id) { 1448 switch (hw->phy.id) {
1449 case I347AT4_E_PHY_ID: 1449 case I347AT4_E_PHY_ID:
1450 case M88E1112_E_PHY_ID: 1450 case M88E1112_E_PHY_ID:
1451 case M88E1545_E_PHY_ID: 1451 case M88E1543_E_PHY_ID:
1452 case I210_I_PHY_ID: 1452 case I210_I_PHY_ID:
1453 ret_val = igb_copper_link_setup_m88_gen2(hw); 1453 ret_val = igb_copper_link_setup_m88_gen2(hw);
1454 break; 1454 break;
@@ -2477,28 +2477,28 @@ s32 igb_set_eee_i354(struct e1000_hw *hw)
2477 u16 phy_data; 2477 u16 phy_data;
2478 2478
2479 if ((hw->phy.media_type != e1000_media_type_copper) || 2479 if ((hw->phy.media_type != e1000_media_type_copper) ||
2480 (phy->id != M88E1545_E_PHY_ID)) 2480 (phy->id != M88E1543_E_PHY_ID))
2481 goto out; 2481 goto out;
2482 2482
2483 if (!hw->dev_spec._82575.eee_disable) { 2483 if (!hw->dev_spec._82575.eee_disable) {
2484 /* Switch to PHY page 18. */ 2484 /* Switch to PHY page 18. */
2485 ret_val = phy->ops.write_reg(hw, E1000_M88E1545_PAGE_ADDR, 18); 2485 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 18);
2486 if (ret_val) 2486 if (ret_val)
2487 goto out; 2487 goto out;
2488 2488
2489 ret_val = phy->ops.read_reg(hw, E1000_M88E1545_EEE_CTRL_1, 2489 ret_val = phy->ops.read_reg(hw, E1000_M88E1543_EEE_CTRL_1,
2490 &phy_data); 2490 &phy_data);
2491 if (ret_val) 2491 if (ret_val)
2492 goto out; 2492 goto out;
2493 2493
2494 phy_data |= E1000_M88E1545_EEE_CTRL_1_MS; 2494 phy_data |= E1000_M88E1543_EEE_CTRL_1_MS;
2495 ret_val = phy->ops.write_reg(hw, E1000_M88E1545_EEE_CTRL_1, 2495 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_EEE_CTRL_1,
2496 phy_data); 2496 phy_data);
2497 if (ret_val) 2497 if (ret_val)
2498 goto out; 2498 goto out;
2499 2499
2500 /* Return the PHY to page 0. */ 2500 /* Return the PHY to page 0. */
2501 ret_val = phy->ops.write_reg(hw, E1000_M88E1545_PAGE_ADDR, 0); 2501 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0);
2502 if (ret_val) 2502 if (ret_val)
2503 goto out; 2503 goto out;
2504 2504
@@ -2549,7 +2549,7 @@ s32 igb_get_eee_status_i354(struct e1000_hw *hw, bool *status)
2549 2549
2550 /* Check if EEE is supported on this device. */ 2550 /* Check if EEE is supported on this device. */
2551 if ((hw->phy.media_type != e1000_media_type_copper) || 2551 if ((hw->phy.media_type != e1000_media_type_copper) ||
2552 (phy->id != M88E1545_E_PHY_ID)) 2552 (phy->id != M88E1543_E_PHY_ID))
2553 goto out; 2553 goto out;
2554 2554
2555 ret_val = igb_read_xmdio_reg(hw, E1000_PCS_STATUS_ADDR_I354, 2555 ret_val = igb_read_xmdio_reg(hw, E1000_PCS_STATUS_ADDR_I354,
diff --git a/drivers/net/ethernet/intel/igb/e1000_defines.h b/drivers/net/ethernet/intel/igb/e1000_defines.h
index 60559af39a98..978eca31ceda 100644
--- a/drivers/net/ethernet/intel/igb/e1000_defines.h
+++ b/drivers/net/ethernet/intel/igb/e1000_defines.h
@@ -787,7 +787,7 @@
787#define I350_I_PHY_ID 0x015403B0 787#define I350_I_PHY_ID 0x015403B0
788#define M88_VENDOR 0x0141 788#define M88_VENDOR 0x0141
789#define I210_I_PHY_ID 0x01410C00 789#define I210_I_PHY_ID 0x01410C00
790#define M88E1545_E_PHY_ID 0x01410EA0 790#define M88E1543_E_PHY_ID 0x01410EA0
791 791
792/* M88E1000 Specific Registers */ 792/* M88E1000 Specific Registers */
793#define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */ 793#define M88E1000_PHY_SPEC_CTRL 0x10 /* PHY Specific Control Register */
@@ -909,9 +909,9 @@
909#define E1000_EEE_LP_ADV_DEV_I210 7 /* EEE LP Adv Device */ 909#define E1000_EEE_LP_ADV_DEV_I210 7 /* EEE LP Adv Device */
910#define E1000_EEE_LP_ADV_ADDR_I210 61 /* EEE LP Adv Register */ 910#define E1000_EEE_LP_ADV_ADDR_I210 61 /* EEE LP Adv Register */
911#define E1000_MMDAC_FUNC_DATA 0x4000 /* Data, no post increment */ 911#define E1000_MMDAC_FUNC_DATA 0x4000 /* Data, no post increment */
912#define E1000_M88E1545_PAGE_ADDR 0x16 /* Page Offset Register */ 912#define E1000_M88E1543_PAGE_ADDR 0x16 /* Page Offset Register */
913#define E1000_M88E1545_EEE_CTRL_1 0x0 913#define E1000_M88E1543_EEE_CTRL_1 0x0
914#define E1000_M88E1545_EEE_CTRL_1_MS 0x0001 /* EEE Master/Slave */ 914#define E1000_M88E1543_EEE_CTRL_1_MS 0x0001 /* EEE Master/Slave */
915#define E1000_EEE_ADV_DEV_I354 7 915#define E1000_EEE_ADV_DEV_I354 7
916#define E1000_EEE_ADV_ADDR_I354 60 916#define E1000_EEE_ADV_ADDR_I354 60
917#define E1000_EEE_ADV_100_SUPPORTED (1 << 1) /* 100BaseTx EEE Supported */ 917#define E1000_EEE_ADV_100_SUPPORTED (1 << 1) /* 100BaseTx EEE Supported */
diff --git a/drivers/net/ethernet/intel/igb/e1000_phy.c b/drivers/net/ethernet/intel/igb/e1000_phy.c
index 60461946f98c..5adccbc90740 100644
--- a/drivers/net/ethernet/intel/igb/e1000_phy.c
+++ b/drivers/net/ethernet/intel/igb/e1000_phy.c
@@ -1806,7 +1806,7 @@ s32 igb_get_cable_length_m88_gen2(struct e1000_hw *hw)
1806 phy->max_cable_length = phy_data / (is_cm ? 100 : 1); 1806 phy->max_cable_length = phy_data / (is_cm ? 100 : 1);
1807 phy->cable_length = phy_data / (is_cm ? 100 : 1); 1807 phy->cable_length = phy_data / (is_cm ? 100 : 1);
1808 break; 1808 break;
1809 case M88E1545_E_PHY_ID: 1809 case M88E1543_E_PHY_ID:
1810 case I347AT4_E_PHY_ID: 1810 case I347AT4_E_PHY_ID:
1811 /* Remember the original page select and set it to 7 */ 1811 /* Remember the original page select and set it to 7 */
1812 ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT, 1812 ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT,