From: hayeswang Date: Mon, 7 Nov 2011 20:44:37 +0000 (+0000) Subject: r8169: increase the delay parameter of pm_schedule_suspend X-Git-Tag: v2.6.39-400.9.0~423^2~19^2~11^2~38 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f48fc9f19a4d45018b445c0020c158342792f25f;p=users%2Fjedix%2Flinux-maple.git r8169: increase the delay parameter of pm_schedule_suspend The link down would occur when reseting PHY. And it would take about 2 ~ 5 seconds from link down to link up. If the delay of pm_schedule_suspend is not long enough, the device would enter runtime_suspend before link up. After link up, the device would wake up and reset PHY again. Then, you would find the driver keep in a loop of runtime_suspend and rumtime_resume. (cherry picked from commit 10953db8e1a278742ef7e64a3d1491802bcfa98b) Signed-off-by: Hayes Wang Acked-by: Francois Romieu Signed-off-by: David S. Miller Signed-off-by: Joe Jin --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 66d7123e7c0d..fb2e76afc182 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -1280,7 +1280,7 @@ static void __rtl8169_check_link_status(struct net_device *dev, netif_carrier_off(dev); netif_info(tp, ifdown, dev, "link down\n"); if (pm) - pm_schedule_suspend(&tp->pci_dev->dev, 100); + pm_schedule_suspend(&tp->pci_dev->dev, 5000); } spin_unlock_irqrestore(&tp->lock, flags); }