iwmc3200wifi: add disconnect work
authorZhu Yi <yi.zhu@intel.com>
Tue, 1 Sep 2009 13:14:02 +0000 (15:14 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 1 Sep 2009 16:48:27 +0000 (12:48 -0400)
commitc7436273889e0ce511b317041f35344e92344885
tree6b18a0a3d5308226afac15e1a545ef30119c925a
parentde15fd31fcabb4b81a556736dd67ec4f71462f07
iwmc3200wifi: add disconnect work

When the driver receives "connection terminated" event from device,
it could be caused by 2 reasons: the firmware is roaming or the
connection is lost (AP disappears). For the former, an association
complete event is supposed to come within 3 seconds. For the latter,
the driver won't receive any event except the connection terminated.
So we kick a delayed work (5*HZ) when we receive the connection
terminated event. It will be canceled if it turns out to be a roaming
event later. Otherwise we notify SME and userspace the disconnection.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwmc3200wifi/iwm.h
drivers/net/wireless/iwmc3200wifi/main.c
drivers/net/wireless/iwmc3200wifi/rx.c