deliverable/linux.git
18 years agoFix 'Driver using old /proc/net/wireless support, please fix driver !' message.
Benoit Boissinot [Thu, 15 Sep 2005 17:30:28 +0000 (17:30 +0000)] 
Fix 'Driver using old /proc/net/wireless support, please fix driver !' message.

Wireless extensions moved the get_wireless_stats handler from being
in net_device into wireless_handler.

Signed-off-by: Benoit Boissinot <benoit.boissinot@ens-lyon.org>
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoPulled out a stray KERNEL_VERSION check around the suspend handler.
James Ketrenos [Thu, 15 Sep 2005 06:00:31 +0000 (01:00 -0500)] 
Pulled out a stray KERNEL_VERSION check around the suspend handler.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoUpdated driver version stamps for ipw2100 (1.1.3) and ipw2200 (1.0.7)
James Ketrenos [Thu, 15 Sep 2005 05:42:42 +0000 (00:42 -0500)] 
Updated driver version stamps for ipw2100 (1.1.3) and ipw2200 (1.0.7)

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFixes WEP firmware error condition.
Hong Liu [Thu, 15 Sep 2005 02:04:15 +0000 (21:04 -0500)] 
Fixes WEP firmware error condition.

The problem is caused by the patch in bug455 -- Channel change flood
generates fatal error.

The patch set the DISASSOCIATING status bit after sending the command.
The process was scheduled out when waiting for the command to be sent to
the card. The disassociated notification clears the DISASSOCIATING bit
in the tasklet before the process set the bit.

Move the bit setting code before sending the command now.

Signed-off-by: Hong Liu <hong.liu@intel.com>
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years ago[Fix bug# 771] Too many (8) bytes recieved when using AES/hwcrypto
Zhu Yi [Mon, 12 Sep 2005 15:48:48 +0000 (10:48 -0500)] 
[Fix bug# 771] Too many (8) bytes recieved when using AES/hwcrypto

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFixes problem with WEP not working (association succeeds, but no Tx/Rx)
Hong Liu [Mon, 12 Sep 2005 15:43:33 +0000 (10:43 -0500)] 
Fixes problem with WEP not working (association succeeds, but no Tx/Rx)

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoRemoved PF_SYNCTHREAD legacy.
James Ketrenos [Wed, 7 Sep 2005 23:39:03 +0000 (18:39 -0500)] 
Removed PF_SYNCTHREAD legacy.

The PF_SYNCTHREAD check was introduced to try and remain compatible with
SWSUSP2.  This check is no longer needed with newer versions.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFixed problem with get_cmd_string not existing if CONFIG_IPW_DEBUG disabled.
James Ketrenos [Wed, 7 Sep 2005 23:19:08 +0000 (18:19 -0500)] 
Fixed problem with get_cmd_string not existing if CONFIG_IPW_DEBUG disabled.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoCard with WEP enabled and using shared-key auth will have firmware
Hong Liu [Wed, 31 Aug 2005 10:14:27 +0000 (18:14 +0800)] 
Card with WEP enabled and using shared-key auth will have firmware
error when it tries to auth to a WPA ap. The patch filters out WPA
networks if the card is not wpa enabled when selecting network to
associate to.

Signed-off-by: Hong Liu <hong.liu@intel.com>
18 years agoMixed PTK/GTK CCMP/TKIP support.
Hong Liu [Wed, 31 Aug 2005 10:07:22 +0000 (18:07 +0800)] 
Mixed PTK/GTK CCMP/TKIP support.

Signed-off-by: Hong Liu <hong.liu@intel.com>
18 years agoFixed is_network_packet() to include checking for broadcast packets.
Peter Jones [Fri, 26 Aug 2005 21:51:06 +0000 (16:51 -0500)] 
Fixed is_network_packet() to include checking for broadcast packets.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoAdds radiotap support to ipw2200 in monitor mode..
Mike Kershaw [Fri, 26 Aug 2005 05:41:54 +0000 (00:41 -0500)] 
Adds radiotap support to ipw2200 in monitor mode..

Signed-off-by: Mike Kershaw <dragorn@kismetwireless.net>
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoMake all the places the firmware fails to load showerrors (in decimal,
Peter Jones [Fri, 26 Aug 2005 05:33:34 +0000 (00:33 -0500)] 
Make all the places the firmware fails to load showerrors (in decimal,
so you can cross-reference errno.h easily).

Signed-off-by: Peter Jones <pjones@redhat.com>
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoDon't set hardware WEP if we are actually using TKIP/AES.
Hong Liu [Thu, 25 Aug 2005 09:45:49 +0000 (17:45 +0800)] 
Don't set hardware WEP if we are actually using TKIP/AES.

Signed-off-by: Hong Liu <hong.liu@intel.com>
18 years ago[Bug 760] Fix setting WEP key in monitor mode causes IV lost.
Zhu Yi [Thu, 25 Aug 2005 09:43:14 +0000 (17:43 +0800)] 
[Bug 760] Fix setting WEP key in monitor mode causes IV lost.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years ago[Bug 455] Fix frequent channel change generates firmware fatal error.
Hong Liu [Thu, 25 Aug 2005 09:36:13 +0000 (17:36 +0800)] 
[Bug 455] Fix frequent channel change generates firmware fatal error.

Because of the frequent channel change, it is possible that when we are
try to associate with channel 1 (authenticated but not associated).
Another channel change comes at this time, then the driver will issue
disassociate command to the firmware which will cause the fatal error.

It seems that the association/disassociation procedure should not be
interrupted.

The patch attached adds test on STATUS_ASSOCIATING | STATUS_DISASSOCIATING
in ipw_send_cmd(), when ensures that commands will not be sent to firmware
when we are in these two status.

Signed-off-by: Hong Liu <hong.liu@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoAdded wait_state wakeup on scan completion.
James Ketrenos [Thu, 25 Aug 2005 05:49:43 +0000 (00:49 -0500)] 
Added wait_state wakeup on scan completion.
Fixed copyright date in ipw2200.h

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoUpdated ipw2200 to use the new ieee80211 callbacks
James Ketrenos [Fri, 19 Aug 2005 18:18:55 +0000 (13:18 -0500)] 
Updated ipw2200 to use the new ieee80211 callbacks
(handle_probe_response, handle_beacon, handle_association_response).

Fixed a problem with ipw_send_cmd() returning non-zero on success.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoMigrated some of the channel verification code back into the driver to
Liu Hong [Fri, 19 Aug 2005 14:33:10 +0000 (09:33 -0500)] 
Migrated some of the channel verification code back into the driver to
keep regulatory consistency in one location.

Signed-off-by: James Ketrenos
18 years agoAdded cmdlog in non-debug systems.
James Ketrenos [Thu, 25 Aug 2005 05:39:09 +0000 (00:39 -0500)] 
Added cmdlog in non-debug systems.

You can now specify via the module parameter 'cmdlog' to allocate a
ring buffer for caching host commands sent to the firmware. They can
then be dumped at any time via the sysfs entry 'cmd_log'

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoChanged all of the ipw_send_cmd() calls to return any ipw_send_cmd error
James Ketrenos [Tue, 16 Aug 2005 22:07:11 +0000 (17:07 -0500)] 
Changed all of the ipw_send_cmd() calls to return any ipw_send_cmd error
codes to the caller and changed ipw_send_cmd itself to print the error
message to the syslog indicating which command failed to be sent.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoSwitched firmware error dumping so that it will capture a log available
James Ketrenos [Fri, 12 Aug 2005 14:36:32 +0000 (09:36 -0500)] 
Switched firmware error dumping so that it will capture a log available
via sysfs even if debugging disabled.  When a firmware error is
captured, it will be dumped to the kernel log (if debug enabled) and
captured in memory to be retrieved via sysfs.

If an error has already been captured, subsequent errors will be
dropped.

The existing error can be cleared by writing to the error log entry.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoModified ipw_config and STATUS_INIT setting to correct race condition
James Ketrenos [Fri, 12 Aug 2005 14:17:04 +0000 (09:17 -0500)] 
Modified ipw_config and STATUS_INIT setting to correct race condition
with request_scan being called before initialized if invoked from
insmod, resulting in no association occurring during boot until iwlist
scan is run.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFix firmware error when setting tx_power.
Zhu Yi [Thu, 11 Aug 2005 06:39:33 +0000 (14:39 +0800)] 
Fix firmware error when setting tx_power.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoFix ipw_wx_get_txpow shows wrong disabled value.
Zhu Yi [Thu, 11 Aug 2005 02:49:17 +0000 (10:49 +0800)] 
Fix ipw_wx_get_txpow shows wrong disabled value.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years ago[Bug 701] Fix a misuse of ieee->mode with ieee->iw_mode.
Zhu Yi [Fri, 5 Aug 2005 09:26:51 +0000 (17:26 +0800)] 
[Bug 701] Fix a misuse of ieee->mode with ieee->iw_mode.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoFixes the ad-hoc network WEP key list issue.
Hong Liu [Fri, 5 Aug 2005 09:25:50 +0000 (17:25 +0800)] 
Fixes the ad-hoc network WEP key list issue.

If we configure the wep keys after creating the ibss network, the
beacons of this network will not show correctly (it still shows "key
off" in iwlist scan report). This is because we don't update the
beacon info in firmware.

Signed-off-by: Hong Liu <hong.liu@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years ago[Bug 792] Fix WPA-PSK AES both for -Dipw and -Dwext.
Zhu Yi [Fri, 5 Aug 2005 09:22:56 +0000 (17:22 +0800)] 
[Bug 792] Fix WPA-PSK AES both for -Dipw and -Dwext.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoDisable host fragmentation in open mode since IPW2200/2915 hardware
Zhu Yi [Fri, 5 Aug 2005 09:20:40 +0000 (17:20 +0800)] 
Disable host fragmentation in open mode since IPW2200/2915 hardware
support hardware fragmentation.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoWorkaround kernel BUG_ON panic caused by unexpected duplicate packets.
Zhu Yi [Fri, 5 Aug 2005 09:17:35 +0000 (17:17 +0800)] 
Workaround kernel BUG_ON panic caused by unexpected duplicate packets.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
18 years agoAdded more useful geography encoding so people's experience with
James Ketrenos [Thu, 4 Aug 2005 01:36:56 +0000 (20:36 -0500)] 
Added more useful geography encoding so people's experience with
iwconfig matches what their hardware can actually do in regard to
supported channel maps, etc.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFixed some compiler issues if CONFIG_IPW2200_QOS is enabled.
James Ketrenos [Thu, 4 Aug 2005 01:33:14 +0000 (20:33 -0500)] 
Fixed some compiler issues if CONFIG_IPW2200_QOS is enabled.
Updated a copyright date.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoUpdated to support ieee80211 callback to is_queue_full for 802.11e
James Ketrenos [Thu, 28 Jul 2005 21:25:55 +0000 (16:25 -0500)] 
Updated to support ieee80211 callback to is_queue_full for 802.11e
support.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoChanged default # of missed beacons to miss before disassociation to 24
James Ketrenos [Thu, 14 Jul 2005 15:35:05 +0000 (10:35 -0500)] 
Changed default # of missed beacons to miss before disassociation to 24
(vs. 9 which is too low in most environments)

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years ago[Bug 637] Set tx power for A band.
Liu Hong [Wed, 13 Jul 2005 17:27:17 +0000 (12:27 -0500)] 
[Bug 637] Set tx power for A band.

It uses the ieee80211-geo info to set the tx power of the a/b/g band.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years ago[bug 667] Fix the notorious "No space for Tx" bug.
Zhu Yi [Wed, 13 Jul 2005 17:25:38 +0000 (12:25 -0500)] 
[bug 667] Fix the notorious "No space for Tx" bug.

We send SYSTEM_CONFIG command after the TGI_KEY command if hardware
encryption is enabled. It sometimes causes a firmware stall (firmware
doesn't respond to any request) and finally bungs up the Tx send queue.
The solution is to send SYSTEM_CONFIG command in the post association
stage from a workqueue.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFix is_duplicate_packet() bug for fragmentation number setting.
Zhu Yi [Wed, 13 Jul 2005 17:22:15 +0000 (12:22 -0500)] 
Fix is_duplicate_packet() bug for fragmentation number setting.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFix hardware encryption (both WEP and AES) doesn't work with fragmentation.
Zhu Yi [Wed, 13 Jul 2005 17:24:51 +0000 (12:24 -0500)] 
Fix hardware encryption (both WEP and AES) doesn't work with fragmentation.
Firmware sends received packets with double sized ICV/MIC.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoCatch ipw2200 up to equivelancy with v1.0.5
James Ketrenos [Thu, 25 Aug 2005 05:05:33 +0000 (00:05 -0500)] 
Catch ipw2200 up to equivelancy with v1.0.5

* Fixed #452 problem with setting retry limit (thanks to Hong Liu)
* Fixed #592 race condition during association causing firmware errors
* Fixed #602 problem with building in 64-bit environment
* Fixed #625 problem with SCAN_REQUEST_EXT sometimes failing
* Fixed #645 problem with bit rate not decreasing when moving laptop
  farther from AP
* Fixed #656 problem with 'iwconfig eth1 mode auto' and 'modprobe'
  locking the system
* Fixed #667 problem with "No space for Tx" for hwcrypto=1
* Fixed #685 kernel panic in rmmod caused by led work is still queued
* Fixed #695 problem with network doesn't reassociate after suspend/resume
* Fixed #701 problem with 'iwprvi sw_reset' not resetting the card from
  monitor mode
* Fixed #710 problem with monitor mode being used after a WEP key has
  been configured
* Fixed network->mode vs. priv->ieee->iw_mode checking (thanks to Ben Cahill)
* Fixed "Unknown management packet %d" warning
* Fixed setting channels multiple times in monitor mode causes scan stopped
* Fixed ipw_wx_sw_reset doesn't switch firmware if mode is changed.
* Add duplicate packet checking code (kill ping DUP! and TKIP replay warning)
* Fix hardware encryption (both WEP and AES) doesn't work with fragmentation.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoMove code from ipw2100_wpa_enable to IPW2100_PARAM_DROP_UNENCRYPTED to
Zhu Yi [Wed, 13 Jul 2005 17:30:34 +0000 (12:30 -0500)] 
Move code from ipw2100_wpa_enable to IPW2100_PARAM_DROP_UNENCRYPTED to
support wpa_supplicant with open AP. We need this to make driver_ipw
work.

driver_ext has already had the similar code with the WE-18 support
added.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years ago[Bug 339] Fix ipw2100 iwconfig set/get txpower.
Liu Hong [Wed, 13 Jul 2005 17:29:21 +0000 (12:29 -0500)] 
[Bug 339] Fix ipw2100 iwconfig set/get txpower.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
18 years agoFixed WEP on ipw2100 (priv->sec was being used instead of