iwlwifi: make sure device is reset when unloading driver
authorBen Cahill <ben.m.cahill@intel.com>
Fri, 23 Oct 2009 20:42:35 +0000 (13:42 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 27 Oct 2009 20:50:03 +0000 (16:50 -0400)
commitc166b25a5c02d881b1da15f3afe9dc9e56b206a8
tree647be6f491476f29bb8592749699f1b89dd84055
parent442464218d93aa0aacc55c3a7ac908ae00abff5f
iwlwifi: make sure device is reset when unloading driver

Add unconditional call to apm_ops.stop() to reset device to low power state
when unloading driver.  Some paths have existed to unload driver *without*
resetting device, therefore some errors have persisted through multiple
load/unload cycles, until the whole platform gets rebooted; this is an
attempt to remedy some of those situations.  Sorry, I can't seem to find
a bughost.org bug that specifically has these symptoms, but I had it happen
recently here.

Note that this will *not* fix situations in which the PCI express bus has
crashed (evidenced by register reads showing "0xffffffff"), e.g. bughost.org
1855 and 2096; device is unreachable from driver in those cases.

Signed-off-by: Ben Cahill <ben.m.cahill@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-agn.c
drivers/net/wireless/iwlwifi/iwl3945-base.c