rum(4): add support for hardware encryption (WEP, TKIP and CCMP).
authoradrian <adrian@FreeBSD.org>
Sat, 3 Oct 2015 20:49:08 +0000 (20:49 +0000)
committeradrian <adrian@FreeBSD.org>
Sat, 3 Oct 2015 20:49:08 +0000 (20:49 +0000)
commitb93df8b4593a115069d7f9aa0b9cece4974e1cb2
treede8df51856e228250d8f4b7d488711387c067169
parentf9afd0b51375cf1a42b959b0a050569431b5eb1c
rum(4): add support for hardware encryption (WEP, TKIP and CCMP).

This diff includes:

* Transmitter Addresses, Keys and TKIP MIC addition to the Security Key Table.
* Proper SEC Control Registers initialization and maintenance.
* Additional flags and values in TX descriptor, which are required for encryption support.
* Error checking in RX path.

Tested:

* Tested on WUSB54GC, STA (WEP, TKIP, CCMP), HOSTAP (CCMP) and IBSS (CCMP, WPA-None) modes.
* rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, STA mode (CCMP+TKIP)

Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3640
sys/dev/usb/wlan/if_rum.c
sys/dev/usb/wlan/if_rumreg.h
sys/dev/usb/wlan/if_rumvar.h