net/e1000: add minimum support for Broadcom 54616 PHY
authorChas Williams <chas3@att.com>
Wed, 6 Dec 2017 23:55:28 +0000 (18:55 -0500)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 14 May 2018 21:31:48 +0000 (22:31 +0100)
If we find a Broadcom 54616, handle as a e1000_phy_none assuming that
the NIC reset has initialized the PHY to a sane state.

Signed-off-by: Chas Williams <chas3@att.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
drivers/net/e1000/base/e1000_82575.c
drivers/net/e1000/base/e1000_defines.h

index 15c7dd8..da1a9a7 100644 (file)
@@ -312,6 +312,9 @@ STATIC s32 e1000_init_phy_params_82575(struct e1000_hw *hw)
                phy->ops.set_d3_lplu_state = e1000_set_d3_lplu_state_82580;
                phy->ops.force_speed_duplex = e1000_phy_force_speed_duplex_m88;
                break;
+       case BCM54616_E_PHY_ID:
+               phy->type               = e1000_phy_none;
+               break;
        default:
                ret_val = -E1000_ERR_PHY;
                goto out;
@@ -1607,6 +1610,8 @@ STATIC s32 e1000_setup_copper_link_82575(struct e1000_hw *hw)
        case e1000_phy_82580:
                ret_val = e1000_copper_link_setup_82577(hw);
                break;
+       case e1000_phy_none:
+               break;
        default:
                ret_val = -E1000_ERR_PHY;
                break;
index dbc2bbb..e2101c1 100644 (file)
@@ -1274,6 +1274,7 @@ POSSIBILITY OF SUCH DAMAGE.
 #define I350_I_PHY_ID          0x015403B0
 #define I210_I_PHY_ID          0x01410C00
 #define IGP04E1000_E_PHY_ID    0x02A80391
+#define BCM54616_E_PHY_ID      0x03625D10
 #define M88_VENDOR             0x0141
 
 /* M88E1000 Specific Registers */