]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/phy/phy.c
forcedeth: fix checksum feature in mcp65
[linux-2.6-omap-h63xx.git] / drivers / net / phy / phy.c
index 4044bb1ada8655ebd3a7daa9af2395068efeb34d..c94a1fb3a4bee56bcb9bf9d8235b3453cfce7195 100644 (file)
@@ -16,7 +16,6 @@
  *
  */
 #include <linux/kernel.h>
-#include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/errno.h>
 #include <linux/unistd.h>
@@ -286,6 +285,7 @@ int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd)
 
        return 0;
 }
+EXPORT_SYMBOL(phy_ethtool_sset);
 
 int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd)
 {
@@ -302,7 +302,7 @@ int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd)
 
        return 0;
 }
-
+EXPORT_SYMBOL(phy_ethtool_gset);
 
 /* Note that this function is currently incompatible with the
  * PHYCONTROL layer.  It changes registers without regard to
@@ -587,8 +587,7 @@ int phy_stop_interrupts(struct phy_device *phydev)
         * Finish any pending work; we might have been scheduled
         * to be called from keventd ourselves, though.
         */
-       if (!current_is_keventd())
-               flush_scheduled_work();
+       run_scheduled_work(&phydev->phy_queue);
 
        free_irq(phydev->irq, phydev);