linux_old1/drivers/net/wireless
Ivo van Doorn 866a050384 rt2x00: Fix rate detection for invalid signals
It has been observed on rt2500pci hardware that some
frames received with signal 0x0C do not have the OFDM
flag set.

Signals can have 2 meanings:
 1) The PLCP value
 2) The bitrate * 10

For rt2500pci (1) is for frames received with a OFDM rate,
and (2) is for frames received with a CCK rate.
But 0x0C is a invalid bitrate value but is a valid PLCP
value for 54Mbs (obvious OFDM rate).
This means that it is possible that the hardware does not
set the OFDM bit correctly under all circumstances.
This results in rt2x00 failing to detect the rate and
mac80211 triggering a WARN_ON() and dropping the frame.

To bypass this, print a warning when such a frame is received,
and reset the rate to the lowest supported rate for the current band.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-03-25 16:42:00 -04:00
..
ath5k Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-18 00:37:55 -07:00
b43 b43: Don't compile N-PHY code when N-PHY is disabled 2008-03-25 16:41:59 -04:00
b43legacy Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-05 12:26:41 -08:00
hostap Add another Prism2 card to hostap 2008-01-31 19:26:51 -08:00
iwlwifi iwlwifi: Completing the parameter packaging 2008-03-25 16:41:58 -04:00
libertas libertas: store rssi as an u32 2008-03-25 16:41:50 -04:00
prism54 prism54: Convert wpa_sem in a mutex 2008-02-29 15:37:17 -05:00
rt2x00 rt2x00: Fix rate detection for invalid signals 2008-03-25 16:42:00 -04:00
zd1211rw zd1211rw: support for mesh interface and beaconing 2008-03-06 17:19:47 -05:00
Kconfig the scheduled bcm43xx removal 2008-03-13 16:01:04 -04:00
Makefile the scheduled bcm43xx removal 2008-03-13 16:01:04 -04:00
adm8211.c adm8211: fix cfg80211 band API conversion 2008-02-29 15:41:48 -05:00
adm8211.h cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
airo.c airo: last of endianness annotations 2008-01-28 15:09:05 -08:00
airo.h
airo_cs.c
airport.c
arlan-main.c
arlan-proc.c
arlan.h
atmel.c drivers/net/wireless/atmel.c: Use time_* macros 2008-02-29 15:37:11 -05:00
atmel.h
atmel_cs.c
atmel_pci.c
hermes.c
hermes.h
hermes_rid.h
i82586.h
i82593.h
ipw2100.c latency.c: use QoS infrastructure 2008-02-05 09:44:22 -08:00
ipw2100.h Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 2007-10-19 20:35:20 -07:00
ipw2200.c ipw2200 annotations and fixes 2008-03-25 16:41:58 -04:00
ipw2200.h ipw2200 annotations and fixes 2008-03-25 16:41:58 -04:00
net2280.h
netwave_cs.c pcmcia: replace kio_addr_t with unsigned int everywhere 2008-02-05 09:44:08 -08:00
orinoco.c orinoco: always use latest BSS info when caching scan results 2008-01-28 15:05:55 -08:00
orinoco.h orinoco: more reliable scan handling 2008-01-28 15:03:32 -08:00
orinoco_cs.c
orinoco_nortel.c
orinoco_pci.c
orinoco_pci.h
orinoco_plx.c
orinoco_tmd.c
p54.h cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
p54common.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-05 12:26:41 -08:00
p54common.h Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-03-05 12:26:41 -08:00
p54pci.c p54pci: endianness annotations and fixes 2008-01-28 15:09:07 -08:00
p54pci.h p54pci: endianness annotations and fixes 2008-01-28 15:09:07 -08:00
p54usb.c prism54: support for 124a:4025 - another version of IOGear GWU513 802.11g 2008-03-13 15:57:22 -04:00
p54usb.h
ray_cs.c misc wireless annotations 2008-01-28 15:09:11 -08:00
ray_cs.h long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
rayctl.h
rndis_wlan.c rndis_wlan: cleanup, rename structure members 2008-03-13 16:02:33 -04:00
rtl818x.h cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180.h cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180_dev.c rtl818x: fix RTS/CTS-less transmit 2008-02-29 15:37:12 -05:00
rtl8180_grf5101.c cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180_grf5101.h Add rtl8180 wireless driver 2008-01-28 15:09:35 -08:00
rtl8180_max2820.c cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180_max2820.h Add rtl8180 wireless driver 2008-01-28 15:09:35 -08:00
rtl8180_rtl8225.c cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180_rtl8225.h Add rtl8180 wireless driver 2008-01-28 15:09:35 -08:00
rtl8180_sa2400.c cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8180_sa2400.h Add rtl8180 wireless driver 2008-01-28 15:09:35 -08:00
rtl8187.h cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8187_dev.c rtl818x: fix RTS/CTS-less transmit 2008-02-29 15:37:12 -05:00
rtl8187_rtl8225.c cfg80211 API for channels/bitrates, mac80211 and driver conversion 2008-02-29 15:19:32 -05:00
rtl8187_rtl8225.h Add rtl8180 wireless driver 2008-01-28 15:09:35 -08:00
spectrum_cs.c
strip.c wireless: Convert to list_for_each_entry_rcu() 2008-02-29 15:37:25 -05:00
wavelan.c WAVELAN - compile-time check for struct sizes 2008-01-28 15:09:50 -08:00
wavelan.h wavelan: mark hardware interfacing structures as packed 2008-02-15 13:44:17 -05:00
wavelan.p.h WAVELAN - compile-time check for struct sizes 2008-01-28 15:09:50 -08:00
wavelan_cs.c pcmcia: replace kio_addr_t with unsigned int everywhere 2008-02-05 09:44:08 -08:00
wavelan_cs.h
wavelan_cs.p.h WAVELAN - compile-time check for struct sizes 2008-01-28 15:09:50 -08:00
wl3501.h
wl3501_cs.c
zd1201.c [PATCH] zd1201: avoid null ptr access of skb->dev 2007-10-18 15:21:47 -04:00
zd1201.h