aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>2008-04-10 23:30:07 +0900
committerChris Wright <chrisw@sous-sol.org>2008-04-18 18:53:30 -0700
commitd7d835ba45a0a2b30ed47887275e271e9ddddbdb (patch)
tree4a21668fa2408be685c8869ebdd3c25c427b9ff8 /drivers
parentacba01a4a72096cd60de7dad570acea3ec7f46ab (diff)
macb: Call phy_disconnect on removing
upstream commit: 84b7901f8d5a17536ef2df7fd628ab865df8fe3a Call phy_disconnect() on remove routine. Otherwise the phy timer causes a kernel crash when unloading. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Jeff Garzik <jgarzik@redhat.com> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/macb.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/macb.c b/drivers/net/macb.c
index c796948051c..20838f9ad1a 100644
--- a/drivers/net/macb.c
+++ b/drivers/net/macb.c
@@ -1257,6 +1257,8 @@ static int __devexit macb_remove(struct platform_device *pdev)
if (dev) {
bp = netdev_priv(dev);
+ if (bp->phy_dev)
+ phy_disconnect(bp->phy_dev);
mdiobus_unregister(&bp->mii_bus);
kfree(bp->mii_bus.irq);
unregister_netdev(dev);