linux/drivers/net/wireless/iwlwifi
Reinette Chatre 849e0dcea6 iwlwifi: initialize geo/channel information during probe
The geo/channel information is obtained from the EEPROM, which is read
during probe. We can thus set up channel information at this time. This
helps us to support ioctl commands that rely on this before the interface
is brought up.

Clearly matches _init_channel_map with _free_channel_map and _init_geos
with _free_geos to ensure functions calling these routines can also call
their cleanup routines.

Fixes a few bugs:
- if channel information is not available when ioctl commands are
  issued then we get a NULL pointer oops. Having channel information
  set up during probe we can deal with ioctl commands without requiring
  interface to be brought up.
  This fixes bug: http://www.bughost.org/bugzilla/show_bug.cgi?id=1552
- Fix potential problem if user triggers probe/remove/probe sequence. The
  value of priv->channel_count was used to determine if channel map is
  set up. This value was never reset when channel map was removed.
- Fix memory leak: priv->modes need to be freed when device removed.

Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-01-31 19:26:41 -08:00
..
Kconfig iwlwifi: remove reference to non-existent documentation 2008-01-28 15:10:02 -08:00
Makefile [IWLWIFI]: remove per-file CFLAGS for IWL define 2007-10-10 16:52:16 -07:00
iwl-3945-commands.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-3945-debug.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-3945-hw.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-3945-io.h iwlwifi: cleanup namespace 2008-01-28 15:04:35 -08:00
iwl-3945-rs.c iwlwifi: 3954 renames iwl3945_rate_scale_priv to iwl3945_rs_sta 2008-01-28 15:10:00 -08:00
iwl-3945-rs.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-3945.c drivers/net/wireless/iwlwifi/iwl-3945.c: fix printk warning 2008-01-28 15:10:11 -08:00
iwl-3945.h mac80211: dont use interface indices in drivers 2008-01-28 15:09:36 -08:00
iwl-4965-commands.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-4965-debug.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-4965-hw.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-4965-io.h iwlwifi: cleanup namespace 2008-01-28 15:04:35 -08:00
iwl-4965-rs.c iwlwifi: 4965 unify rate scale variable names for station data 2008-01-28 15:09:59 -08:00
iwl-4965-rs.h iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-4965.c iwlwifi: style fixes to usage of << and >> operators 2008-01-28 15:10:03 -08:00
iwl-4965.h iwlwifi: remove iwl4965_tx_cmd 2008-01-28 15:09:55 -08:00
iwl-helpers.h iwlwifi: move uCode helper functions to iwl-helpers.h 2008-01-28 15:09:58 -08:00
iwl-prph.h iwlwifi: document 4965 Tx scheduler 2008-01-28 15:05:31 -08:00
iwl-spectrum.h
iwl3945-base.c iwlwifi: initialize geo/channel information during probe 2008-01-31 19:26:41 -08:00
iwl4965-base.c iwlwifi: initialize geo/channel information during probe 2008-01-31 19:26:41 -08:00