diff options
author | Akeem G Abodunrin <akeem.g.abodunrin@intel.com> | 2013-08-27 22:22:58 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2013-09-04 07:57:13 -0400 |
commit | 99af4729c4c5d67dafccb2a1ba29b95cf6f981c2 (patch) | |
tree | a36c0b89c1b68e943e2adce4a28d4a8a302cf791 | |
parent | aa9b8cc44409b140c0dadd3776e99220edf3384a (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.c | 18 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/igb/e1000_defines.h | 8 | ||||
-rw-r--r-- | drivers/net/ethernet/intel/igb/e1000_phy.c | 2 |
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, |