diff options
author | Anton Vorontsov <avorontsov@ru.mvista.com> | 2009-12-30 08:23:30 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-30 22:03:42 -0800 |
commit | 2f5cb43406d0b29b96248f5328a14a6f6abf8ae6 (patch) | |
tree | f43e017599e590a9fbff22e2973dd77e2bc4fb41 /include | |
parent | 541cd3ee00a4fe975b22fac6a3bc846bacef37f7 (diff) | |
download | op-kernel-dev-2f5cb43406d0b29b96248f5328a14a6f6abf8ae6.zip op-kernel-dev-2f5cb43406d0b29b96248f5328a14a6f6abf8ae6.tar.gz |
phylib: Properly reinitialize PHYs after hibernation
Since hibernation assumes power loss, we should fully reinitialize
PHYs (including platform fixups), as if PHYs were just attached.
This patch factors phy_init_hw() out of phy_attach_direct(), then
converts mdio_bus to dev_pm_ops and adds an appropriate restore()
callback.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-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 b1368b8..7968def 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -447,6 +447,7 @@ struct phy_device* get_phy_device(struct mii_bus *bus, int addr); int phy_device_register(struct phy_device *phy); int phy_clear_interrupt(struct phy_device *phydev); int phy_config_interrupt(struct phy_device *phydev, u32 interrupts); +int phy_init_hw(struct phy_device *phydev); int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, u32 flags, phy_interface_t interface); struct phy_device * phy_attach(struct net_device *dev, |