From eb5df670a81d7dfa879938ba0eaac679f024b264 Mon Sep 17 00:00:00 2001 From: Jonathan Bell Date: Tue, 14 May 2019 17:17:59 +0100 Subject: [PATCH 553/678] net: genet: enable link energy detect powerdown for external PHYs There are several warts surrounding bcmgenet_mii_probe() as this function is called from ndo_open, but it's calling registration-type functions. The probe should be called at probe time and refactored such that the PHY device data can be extracted to limit the scope of this flag to Broadcom PHYs. For now, pass this flag in as it puts our attached PHY into a low-power state when disconnected. Signed-off-by: Jonathan Bell --- drivers/net/ethernet/broadcom/genet/bcmmii.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/broadcom/genet/bcmmii.c b/drivers/net/ethernet/broadcom/genet/bcmmii.c index de0e24d912fe..20689b1a220b 100644 --- a/drivers/net/ethernet/broadcom/genet/bcmmii.c +++ b/drivers/net/ethernet/broadcom/genet/bcmmii.c @@ -280,7 +280,10 @@ int bcmgenet_mii_probe(struct net_device *dev) int ret; /* Communicate the integrated PHY revision */ - phy_flags = priv->gphy_rev; + if (priv->internal_phy) + phy_flags = priv->gphy_rev; + else + phy_flags = PHY_BRCM_AUTO_PWRDWN_ENABLE; /* Initialize link state variables that bcmgenet_mii_setup() uses */ priv->old_link = -1; -- 2.19.1