Andriy Voskoboinyk
240dd2906d
urtwn(4): fix scanning from AUTH state
...
Tested with RTL8188EU, STA mode.
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3968
2015-10-27 14:21:24 +00:00
Andriy Voskoboinyk
9acc0e6bea
urtwn(4): do not filter out control frames in the RX path
...
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3811
2015-10-26 21:03:20 +00:00
Andriy Voskoboinyk
a0226b9f2d
urtwn(4): fix mbuf leak in the TX path
...
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3988
2015-10-24 19:59:15 +00:00
Andriy Voskoboinyk
db70df04c4
run(4): convert to ieee80211_tx_complete()
...
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3992
2015-10-23 17:35:03 +00:00
Hans Petter Selasky
74a24bbee6
Fix kernel build by restoring a temporary variable which was not yet
...
ripe for removal.
2015-10-23 11:00:35 +00:00
Andriy Voskoboinyk
74ee6e03d0
urtwn(4): add DBM_ANTNOISE radiotap field
...
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3839
2015-10-23 08:44:40 +00:00
Andriy Voskoboinyk
e97705d4b7
- Split one 4-byte R92C_CR register into 2-byte R92C_CR and 1-byte R92C_MSR
...
registers (they are used for different purposes).
- Wrap R92C_MSR modifications into urtwn_set_mode().
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3838
2015-10-23 08:26:26 +00:00
Andriy Voskoboinyk
1b65f30ffa
urtwn(4): fix the RSSI calculation for RTL8188EU.
...
This change also reverts r252405 (causes integer underflow).
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3820
2015-10-23 07:42:56 +00:00
Andriy Voskoboinyk
5a5461d8e0
urtwn(4): replace hardcoded rate indices with their names
...
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3967
2015-10-22 15:42:53 +00:00
Andriy Voskoboinyk
cc52232057
Initialize radiotap header fields before calling ieee80211_radiotap_rx()
...
Reviewed by: kevlo
Approved by: adrian (mentor)
Differential Revision: https://reviews.freebsd.org/D3951
2015-10-22 12:15:40 +00:00
Hans Petter Selasky
4be283b9be
Add quirk for USB 3.0 PCI device.
...
Submitted by: philipp.maechler@mamo.li
PR: 203650
MFC after: 1 week
2015-10-19 07:21:57 +00:00
Kevin Lo
dc82802918
Accept any correct frames from any source when MONITOR mode is used.
...
Submitted by: Andriy Voskoboinyk <s3erios at gmail.com>
Differential Revision: https://reviews.freebsd.org/D3812
2015-10-12 08:17:21 +00:00
Adrian Chadd
4f4a7a03ce
net80211 drivers: eliminate any references to sc_rxtap_len/sc_txtap_len (never used here)
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3776
2015-10-12 05:21:51 +00:00
Adrian Chadd
c0658ced70
urtwn(4): split *reg and *var parts (no functional change).
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3775
2015-10-12 05:14:49 +00:00
Adrian Chadd
d957a93abe
net80211: move ieee80211_free_node() call on error from ic_raw_xmit() to ieee80211_raw_output().
...
This doesn't free the mbuf upon error; the driver ic_raw_xmit method is still
doing that.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3774
2015-10-12 04:55:20 +00:00
Adrian Chadd
d07be335a0
net80211: separate mbuf cleanup from ieee80211_fragment()
...
* Create ieee80211_free_mbuf() which frees a list of mbufs.
* Use it in the fragment transmit path and ath / uath transmit paths.
* Call it in xmit_pkt() if the transmission fails; otherwise fragments
may be leaked.
This should be a big no-op.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3769
2015-10-12 03:27:08 +00:00
Kevin Lo
f4ea007a07
Sort function prototypes and add missing 'static' keywords.
...
Submitted by: Andriy Voskoboinyk <s3erios at gmail dot com>
Differential Revision: https://reviews.freebsd.org/D3847
2015-10-09 14:31:32 +00:00
Kevin Lo
dd4c159043
Add support for Fresco Logic USB 3.0 host controller.
...
Fresco Logic hosts advertise MSI, but fail to actually generate MSI
interrupts. We have to disable MSI use.
Reviewed by: hselasky
2015-10-08 15:13:57 +00:00
Hans Petter Selasky
0e8fa8c3bc
Add quirk for USB 3.0 PCI device.
...
Submitted by: Gary Jennejohn <gj@freebsd.org>
MFC after: 1 week
2015-10-08 13:39:27 +00:00
Gavin Atkinson
0840f9483d
Recognise the Netgear WNDA4100 (N900) 3x3 device in run(4).
2015-10-08 12:55:21 +00:00
Kevin Lo
78f32e980c
Replace M_NOWAIT with M_WAITOK for consistency with other wireless drivers.
2015-10-04 13:40:22 +00:00
Kevin Lo
24c838f059
Fix max TX power settings for RT5390/RT5392.
...
While here remove wrong definition of RT2860_USB_PHY_MAN_RST.
2015-10-04 13:39:00 +00:00
Adrian Chadd
2e83cb98f6
Fix run(4) mbuf queue flushing / freeing.
...
Ensure things are freed during interface stop, or start may end up never
being able to transmit a full queue.
2015-10-04 05:22:17 +00:00
Adrian Chadd
327459808e
Random zyd(4) fixes to bring TX handling in line with rsu, etc
...
* don't free buffers in the TX routine, only in transmit/raw_xmit
* free nodes + references
* .. and free those nodes/references /before/ net80211 detach
Tested:
* STA mode: zyd0: HMAC ZD1211B, FW 47.25, RF AL2230 S0, PA0 LED 0 BE0 NP1 Gain1 F0
2015-10-04 04:44:06 +00:00
Adrian Chadd
7682e59709
Fix to make compile on gcc-4.2.1 (eg mips, sparc64.)
2015-10-04 04:29:44 +00:00
Adrian Chadd
5f28dd731d
Fix to compile using gcc-4.2 (eg mips, sparc64.)
2015-10-04 04:25:56 +00:00
Adrian Chadd
1354b52cfc
rum(4): add WME support.
...
Tested:
* WUSB54GC, HOSTAP and STA modes.
* Me: rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3700
2015-10-03 22:35:37 +00:00
Adrian Chadd
13072f8d84
run(4): fix WME support (untested).
...
Now run(4) fetches parameters from ic->ic_wme.wme_params array, which is never initialized
(and can be safely removed). This patch replaces &ic->ic_wme.wme_params with
&ic->ic_wme.wme_chanParams.cap_wmeParams (contains parameters for local station;
used by other drivers with WME support).
Tested:
* me: STA: run0: MAC/BBP RT5390 (rev 0x0502), RF RT5370 (MIMO 1T1R), address 38:83:45:11:78:ae
2015-10-03 22:33:45 +00:00
Adrian Chadd
f4ac78a284
rum(4): fix stats interpretation in rum_ratectl_task()
...
Testing:
* WUSB54GC, STA mode
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3690
2015-10-03 22:26:59 +00:00
Adrian Chadd
342ced03e2
rum(4): set short/long retry limits
...
Now device will use retry limit, which is set via 'ifconfig <interface>
maxretry <number>'.
Tested:
* Tested on WUSB54GC, STA mode.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3689
2015-10-03 22:22:26 +00:00
Adrian Chadd
c42e124eca
rum(4): fix sequence number generation.
...
* drop erroneous RT2573_TX_MORE_FRAG flag;
* provide RT2573_TX_HWSEQ where needed.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3672
2015-10-03 22:15:59 +00:00
Adrian Chadd
210ab3c258
net80211: drop ieee80211_beacon_offsets parameter from ieee80211_beacon_alloc() and ieee80211_beacon_update()
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3659
2015-10-03 22:12:25 +00:00
Adrian Chadd
bc813c40bf
net80211: drop redundant 3rd parameter from iv_key_set().
...
The MAC can be fetched from the key struct.
I added the ndis updates to make it compile.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3657
2015-10-03 21:48:27 +00:00
Adrian Chadd
ed5711a11b
rum(4): drop unused 'node id' parameter.
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3655
2015-10-03 20:53:10 +00:00
Adrian Chadd
2cb9ef8d38
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
2015-10-03 20:49:08 +00:00
Adrian Chadd
0e3b4c60e4
rum(4): implement iv_update_beacon call (fixes client power save support).
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3632
2015-10-03 20:45:43 +00:00
Adrian Chadd
a19dbd8d6f
rum(4): attach rum_update_slot to ic_updateslot.
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3631
2015-10-03 20:44:16 +00:00
Adrian Chadd
b780f86455
rum(4): split rum_prepare_beacon() into 'alloc' and 'set' stages
...
Note: I manually had to merge this; I merged in the "put beacon_offsets
into vap" commit before this.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3628
2015-10-03 17:49:11 +00:00
Adrian Chadd
50a31b4887
rum(4): add support for AHDEMO mode.
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3627
2015-10-03 17:34:11 +00:00
Adrian Chadd
42769826d3
rum(4): simplify rum_set_bssid(), rum_set_macaddr() and rum_update_promisc()
...
Tested:
* rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, STA mode
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3626
2015-10-03 17:30:57 +00:00
Adrian Chadd
1ba67b1130
rum(4): do not corrupt MAC address
...
Don't override the NIC MAC address with an overridden MAC address for
a VAP.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3625
2015-10-03 17:18:35 +00:00
Adrian Chadd
aa81f85365
rum(4): add error handling for rum_enable_tsf_sync() and rum_prepare_beacon()
...
Tested:
* rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, STA mode
Note: haven't tested AP mode yet; will do once the rest of the
AP mode / power save commits are in.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3624
2015-10-03 17:11:21 +00:00
Adrian Chadd
6095f7cad3
rum(4): move some code from rum_init() into separate function.
...
Tested:
* rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, STA mode
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3623
2015-10-03 16:37:38 +00:00
Adrian Chadd
0698c0b3d1
rum(4): add error handling in initialization path
...
Tested:
* Tested on WUSB54GC, STA mode.
* rum0: MAC/BBP RT2573 (rev 0x2573a), RF RT2528, STA mode
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3622
2015-10-03 16:21:06 +00:00
Adrian Chadd
b2a76342fd
rum(4): simplify error handling rum_raw_xmit()
...
Move the mbuf free responsibility to the caller of the hardware xmit
function, not the hardware xmit function itself.
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3621
2015-10-03 15:58:00 +00:00
Adrian Chadd
aca2cf3032
rum(4): check mbuf size before accessing its contents
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3610
2015-10-03 15:52:58 +00:00
Adrian Chadd
a6ccd477ac
rum(4): add TSF field into radiotap headers
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3607
2015-10-03 15:49:55 +00:00
Adrian Chadd
99feb20233
run(4): Add initial support for IBSS merge.
...
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3592
2015-10-03 15:48:21 +00:00
Adrian Chadd
30c00a2d89
Remove beacon offsets usage from if_rum.
...
Differential Revision: https://reviews.freebsd.org/D3658
2015-10-03 06:35:17 +00:00
Adrian Chadd
3eaa0cd531
urtwn(4): fix sequence numbering for QoS frames
...
Tested:
* urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, STA mode
Submitted by: <s3erios@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3684
2015-10-03 06:07:01 +00:00