linux/drivers/net/wireless/rt2x00
Helmut Schaa a2b1328a23 rt2x00: Make use of sta_add/remove callbacks in rt2800
This allows us to assign a WCID to each STA even for STAs without
crypto key.

To achieve this search for an unused WCID in the HW WCID table and
assign it to the according STA. When configuring a pairwise key for this
STA we don't need to write the MAC address and BSSIDX anymore but just
update the crypto related fields in the WCID_ATTR table.

This has two advantages:

1) Setting a new key for an already available STA (PTK rekeying) is
slightly less expensive and should improve performance in situations
where a lot of rekeying happens (e.g. a huge number of stations and/or
a small rekeying interval)

2) The TXWI now gets a WCID assigned for unencrypted frames which will
be reflected in the corresponding tx status report. This should make tx
status reports in unencrypted AP mode more reliable as we can
distinguish between multiple key-less STAs.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2011-09-14 13:56:56 -04:00
..
Kconfig rt2x00: Enabled rt35xx device support by default. 2011-06-01 15:10:59 -04:00
Makefile rt2x00: Merge rt2x00ht.c contents in other files. 2011-04-19 15:39:56 -04:00
rt2x00.h rt2x00: Add WCID to crypto struct 2011-09-14 13:56:55 -04:00
rt2x00config.c rt2x00: fix rmmod crash 2011-06-06 15:24:18 -04:00
rt2x00crypto.c rt2x00: Don't use queue entry as parameter when creating TX descriptor. 2011-07-07 13:20:58 -04:00
rt2x00debug.c rt2x00: Split rt2x00dev->flags 2011-04-19 15:39:11 -04:00
rt2x00debug.h
rt2x00dev.c rt2x00: Introduce sta_add/remove callbacks 2011-09-14 13:56:54 -04:00
rt2x00dump.h Fix common misspellings 2011-03-31 11:26:23 -03:00
rt2x00firmware.c rt2x00: Split rt2x00dev->flags 2011-04-19 15:39:11 -04:00
rt2x00leds.c
rt2x00leds.h
rt2x00lib.h rt2x00: Fix compilation without CONFIG_RT2X00_LIB_CRYPTO 2011-08-02 13:48:14 -04:00
rt2x00link.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-04-25 14:34:25 -04:00
rt2x00mac.c rt2x00: Add WCID to crypto struct 2011-09-14 13:56:55 -04:00
rt2x00pci.c rt2x00: Allow dynamic addition of PCI/USB IDs. 2011-04-19 15:39:45 -04:00
rt2x00pci.h rt2x00: Allow dynamic addition of PCI/USB IDs. 2011-04-19 15:39:45 -04:00
rt2x00queue.c rt2x00: Add WCID to HT TX descriptor 2011-09-14 13:56:56 -04:00
rt2x00queue.h rt2x00: Add WCID to HT TX descriptor 2011-09-14 13:56:56 -04:00
rt2x00reg.h rt2x00: Remove STATE_RADIO_IRQ_OFF_ISR and STATE_RADIO_IRQ_ON_ISR 2011-01-31 15:06:24 -05:00
rt2x00soc.c
rt2x00soc.h
rt2x00usb.c rt2x00: reset usb devices at probe 2011-06-22 16:09:44 -04:00
rt2x00usb.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-05-05 13:32:35 -04:00
rt61pci.c rt2x00: Fix PCI interrupt processing race on SMP systems 2011-08-09 15:52:08 -04:00
rt61pci.h
rt73usb.c rt2x00: Implement tx_frames_pending mac80211 callback function. 2011-07-07 13:21:00 -04:00
rt73usb.h
rt2400pci.c rt2x00: Fix PCI interrupt processing race on SMP systems 2011-08-09 15:52:08 -04:00
rt2400pci.h
rt2500pci.c rt2x00: Fix PCI interrupt processing race on SMP systems 2011-08-09 15:52:08 -04:00
rt2500pci.h
rt2500usb.c rt2x00: Implement tx_frames_pending mac80211 callback function. 2011-07-07 13:21:00 -04:00
rt2500usb.h
rt2800.h rt2x00: Add LED_CFG register description 2011-09-14 13:56:45 -04:00
rt2800lib.c rt2x00: Make use of sta_add/remove callbacks in rt2800 2011-09-14 13:56:56 -04:00
rt2800lib.h rt2x00: Make use of sta_add/remove callbacks in rt2800 2011-09-14 13:56:56 -04:00
rt2800pci.c rt2x00: Make use of sta_add/remove callbacks in rt2800 2011-09-14 13:56:56 -04:00
rt2800pci.h
rt2800usb.c rt2x00: Make use of sta_add/remove callbacks in rt2800 2011-09-14 13:56:56 -04:00
rt2800usb.h