summaryrefslogtreecommitdiffstats
path: root/include/linux/phy.h
diff options
context:
space:
mode:
authorAnton Vorontsov <avorontsov@ru.mvista.com>2009-12-30 08:23:30 +0000
committerDavid S. Miller <davem@davemloft.net>2009-12-30 22:03:42 -0800
commit2f5cb43406d0b29b96248f5328a14a6f6abf8ae6 (patch)
treef43e017599e590a9fbff22e2973dd77e2bc4fb41 /include/linux/phy.h
parent541cd3ee00a4fe975b22fac6a3bc846bacef37f7 (diff)
downloadop-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/linux/phy.h')
-rw-r--r--include/linux/phy.h1
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,
OpenPOWER on IntegriCloud