From: Stephen Rothwell Date: Fri, 28 Jun 2013 05:06:05 +0000 (+1000) Subject: Merge remote-tracking branch 'workqueues/for-next' X-Git-Tag: next-20130628~31 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=89b9318953defdcaa137fd97d3ad41db240991ed;p=karo-tx-linux.git Merge remote-tracking branch 'workqueues/for-next' --- 89b9318953defdcaa137fd97d3ad41db240991ed diff --cc drivers/net/phy/phy.c index 10d058ab4f79,984c0b5ba174..36c6994436b7 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@@ -916,17 -918,10 +916,18 @@@ void phy_state_machine(struct work_stru if (err < 0) phy_error(phydev); - schedule_delayed_work(&phydev->state_queue, PHY_STATE_TIME * HZ); + queue_delayed_work(system_power_efficient_wq, &phydev->state_queue, + PHY_STATE_TIME * HZ); } +void phy_mac_interrupt(struct phy_device *phydev, int new_link) +{ + cancel_work_sync(&phydev->phy_queue); + phydev->link = new_link; + schedule_work(&phydev->phy_queue); +} +EXPORT_SYMBOL(phy_mac_interrupt); + static inline void mmd_phy_indirect(struct mii_bus *bus, int prtad, int devad, int addr) {