diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2014-02-17 13:34:02 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-02-17 16:40:08 -0500 |
commit | 797ac07137d9ae8572008e21e6123a9ae17dae50 (patch) | |
tree | cb4753c7b10f5e950542f34dd6782e65291991c3 /include/linux/phy.h | |
parent | ee0c4c39c577d07c05749a5f5b960b4c0fdd8097 (diff) | |
download | linux-797ac07137d9ae8572008e21e6123a9ae17dae50.tar.gz linux-797ac07137d9ae8572008e21e6123a9ae17dae50.tar.bz2 linux-797ac07137d9ae8572008e21e6123a9ae17dae50.zip |
net: phy: move PHY software reset to genphy_soft_reset
As pointed out by Shaohui, this function is generic for 10/100/1000
PHYs, but 10G PHYs might have a slightly different reset sequence which
prevents most of them from using this function.
Move the BMCR_RESET based software resent sequence to
genphy_soft_reset() in preparation for allowing PHY drivers to implement
a soft_reset() callback.
Reported-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/phy.h')
-rw-r--r-- | include/linux/phy.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/phy.h b/include/linux/phy.h index f7fe54628424..bffe0ec1604f 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -666,6 +666,7 @@ int genphy_update_link(struct phy_device *phydev); int genphy_read_status(struct phy_device *phydev); int genphy_suspend(struct phy_device *phydev); int genphy_resume(struct phy_device *phydev); +int genphy_soft_reset(struct phy_device *phydev); void phy_driver_unregister(struct phy_driver *drv); void phy_drivers_unregister(struct phy_driver *drv, int n); int phy_driver_register(struct phy_driver *new_driver); |