3.16.80-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: Doug Berger <opendmb@xxxxxxxxx> commit fe586b823372a9f43f90e2c6aa0573992ce7ccb7 upstream. The internal 40nm EPHYs use a "Workaround for putting the PHY in IDDQ mode." These PHYs require a soft reset to restore functionality after they are powered back up. This commit defines the soft_reset function to use genphy_soft_reset during phy_init_hw to accommodate this. Fixes: 6e2d85ec0559 ("net: phy: Stop with excessive soft reset") Signed-off-by: Doug Berger <opendmb@xxxxxxxxx> Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> [bwh: Backported to 3.16: - Delete trailing backslash; there is a single entry for 40 nm PHYs and not a macro definition - Adjust context] Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx> --- drivers/net/phy/bcm7xxx.c | 1 + 1 file changed, 1 insertion(+) --- a/drivers/net/phy/bcm7xxx.c +++ b/drivers/net/phy/bcm7xxx.c @@ -306,6 +306,7 @@ static struct phy_driver bcm7xxx_driver[ .features = PHY_GBIT_FEATURES | SUPPORTED_Pause | SUPPORTED_Asym_Pause, .flags = PHY_IS_INTERNAL, + .soft_reset = genphy_soft_reset, .config_init = bcm7xxx_config_init, .config_aneg = genphy_config_aneg, .read_status = genphy_read_status,