aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wimax/i2400m/driver.c
diff options
context:
space:
mode:
authorInaky Perez-Gonzalez <inaky@linux.intel.com>2009-09-16 16:30:39 -0700
committerInaky Perez-Gonzalez <inaky@linux.intel.com>2009-10-19 15:56:05 +0900
commitac53aed9349242095a780f57ac0c995fb170c950 (patch)
tree2962df61c6bdee9f184bb278a8b25b4c5a6d219d /drivers/net/wimax/i2400m/driver.c
parentwimax/i2400m: don't overwrite error codes when failing to load firmware (diff)
downloadlinux-dev-ac53aed9349242095a780f57ac0c995fb170c950.tar.xz
linux-dev-ac53aed9349242095a780f57ac0c995fb170c950.zip
wimax/i2400m: on device stop, clean up pending wake & TX work
When the i2400m device needs to wake up an idle WiMAX connection, it schedules a workqueue job to do it. Currently, only when the network stack called the _stop() method this work struct was being cancelled. This has to be done every time the device is stopped. So add a call in i2400m_dev_stop() to take care of such cleanup, which is now wrapped in i2400m_net_wake_stop(). Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Diffstat (limited to 'drivers/net/wimax/i2400m/driver.c')
-rw-r--r--drivers/net/wimax/i2400m/driver.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wimax/i2400m/driver.c b/drivers/net/wimax/i2400m/driver.c
index 07d12be0cf81..a33df0431020 100644
--- a/drivers/net/wimax/i2400m/driver.c
+++ b/drivers/net/wimax/i2400m/driver.c
@@ -527,6 +527,7 @@ void __i2400m_dev_stop(struct i2400m *i2400m)
d_fnstart(3, dev, "(i2400m %p)\n", i2400m);
wimax_state_change(wimax_dev, __WIMAX_ST_QUIESCING);
+ i2400m_net_wake_stop(i2400m);
i2400m_dev_shutdown(i2400m);
i2400m->ready = 0;
i2400m->bus_dev_stop(i2400m);