#
9efd2154 |
| 13-Dec-2024 |
Adrian Chadd <adrian@FreeBSD.org> |
rtwn: create a new HAL routine for enabling STA mode beacon processing
For some NICs (notably the rtl8192cu that I'm working on) the firmware rate adaptation requires beacon processing to be enabled
rtwn: create a new HAL routine for enabling STA mode beacon processing
For some NICs (notably the rtl8192cu that I'm working on) the firmware rate adaptation requires beacon processing to be enabled.
Instead of making assumptions in the if_rtwn beacon routines (and honestly all of that should be in the HAL too), create a HAL method for enabling/disabling beacon processing specifically in STA mode.
Since this isn't necessarily required for all NICs (notably the RTL8188E NICs, where some will do firmware rate control and some will require driver rate control), only enable it for the RTL8192CU and RT8192EU.
The RTL8188E and RTL8812/RTL8821 just have no-op routines for now.
Locally tested:
* RTL8192CU, STA mode
Differential Revision: https://reviews.freebsd.org/D48066 Reviewed by: bz
show more ...
|
#
0ea7f8ca |
| 08-Dec-2024 |
Adrian Chadd <adrian@FreeBSD.org> |
rtwn: try enforcing net80211 regulatory / txpower limits for 11n chips
This is an attempt to reverse engineer what the actual transmit power calculations are doing and apply net80211 limits on them.
rtwn: try enforcing net80211 regulatory / txpower limits for 11n chips
This is an attempt to reverse engineer what the actual transmit power calculations are doing and apply net80211 limits on them. It doesn't look as simple as just applying the check at the end - there are plenty of places where offsets are calculated between different PHY modes and 1 / 2 antenna MCS transmit rates.
There are also some places where the offset being added is negative, so handle the potential underflow so when things hit 0, they don't just wrap and cause the maximum transmit power into the registers.
This is being done to aide in power/performance debugging - if there are issues with the transmit power being wrongly calculated and are too high, the output waveform will be distorted and it will effect performance. Being able to drop the transmit power by a few dB here and there can quickly identify if this is happening (because suddenly higher MCS rates / OFDM rates suddenly work better!)
I've tested each NIC through the transmit power values from 0 dBm to 30dBm via ifconfig (and they're all capped far before that, normally around 20-25dBm) and they're not underflowing.
Locally tested:
* RTL8192CU, STA * RTL8192EU, STA * RTL8188EU, STA
Differential Revision: https://reviews.freebsd.org/D47987 Reviewed by: bz, imp
show more ...
|
#
b71805e9 |
| 07-Dec-2024 |
Adrian Chadd <adrian@FreeBSD.org> |
rtwn: add APIs for setting transmit power
The RTL8188/RTL8192/RTL8821/RTL8812 NICs all seem happy to have their transmit power changed at runtime - and it does seem to do what's expected - the trans
rtwn: add APIs for setting transmit power
The RTL8188/RTL8192/RTL8821/RTL8812 NICs all seem happy to have their transmit power changed at runtime - and it does seem to do what's expected - the transmit power level does change.
So, add the API call here, even though it's all currently no-ops. A follow-up commit will land changes for the chipsets to both limit transmit power to the configured / regulatory limit AND allow reconfiguration at runtime.
Differential Revision: https://reviews.freebsd.org/D47979 Reviewed by: bz, imp
show more ...
|
#
b59017c5 |
| 04-Dec-2024 |
Adrian Chadd <adrian@FreeBSD.org> |
rtwn: add placeholder for the per-MACID rate report
Some chipsets (such as the RTL8188E) have firmware which supports a second kind of TX report - instead of a per-packet TX report, it can generate
rtwn: add placeholder for the per-MACID rate report
Some chipsets (such as the RTL8188E) have firmware which supports a second kind of TX report - instead of a per-packet TX report, it can generate a per-MACID summary of packet success/failure counters.
This would be helpful for those chips to cut back on the USB traffic to get rate control feedback for the driver based rate control we're currently using.
This is a no-op; it just gets the pieces in place for future work.
Differential Revision: https://reviews.freebsd.org/D47894
show more ...
|
Revision tags: release/14.2.0, release/13.4.0, release/14.1.0, release/13.3.0, release/14.0.0 |
|
#
685dc743 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0, release/12.2.0 |
|
#
b3512b30 |
| 01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
rtwn: clean up empty lines in .c and .h files
|
Revision tags: release/11.4.0, release/12.1.0, release/11.3.0 |
|
#
fdc9504f |
| 10-Jan-2019 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn_usb(4): add IQ calibration support for RTL8192CU
The code is similar to the one for RTL8188E* and probably should be shared with RTL8188CE (needs to be tested).
Checked with RTL8188CUS, STA mo
rtwn_usb(4): add IQ calibration support for RTL8192CU
The code is similar to the one for RTL8188E* and probably should be shared with RTL8188CE (needs to be tested).
Checked with RTL8188CUS, STA mode.
MFC after: 5 days
show more ...
|
#
a163403b |
| 02-Jan-2019 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn(4): rename set_name -> set_rom_opts method and reuse it for RTL8188E*
MFC after: 4 days
|
#
17d5fbf2 |
| 02-Jan-2019 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn_pci(4): add support for event-based Tx reports.
It will be used for RTL8188EE (and, probably, others).
MFC after: 4 days
|
Revision tags: release/12.0.0, release/11.2.0, release/10.4.0, release/11.1.0 |
|
#
9b3ece1c |
| 04-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313243
|
#
2004ce3f |
| 24-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312624 through r312719.
|
#
60b9567d |
| 24-Jan-2017 |
Kevin Lo <kevlo@FreeBSD.org> |
Add support for the Realtek RTL8192EU chipset. Committed over the D-Link DWA-131 rev E1 on amd64 with WPA.
Reviewed by: avos
|
#
a4aa656a |
| 22-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312309 through r312623.
|
#
09606165 |
| 17-Jan-2017 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn: export more stats to net80211
Setup more ieee80211_rx_stats fields for received frames: - pktflags: * IEEE80211_RX_F_FAIL_FCSCRC; * IEEE80211_RX_F_AMPDU; * IEEE80211_RX_F_AMPDU_MORE;
rtwn: export more stats to net80211
Setup more ieee80211_rx_stats fields for received frames: - pktflags: * IEEE80211_RX_F_FAIL_FCSCRC; * IEEE80211_RX_F_AMPDU; * IEEE80211_RX_F_AMPDU_MORE; * IEEE80211_RX_F_SHORTGI; - rate flags (CCK, OFDM, HT); - width; - phytype; - rate; - rx_tsf; - rssi; - nf; - ieee, freq (RTL8188EU only, when ht40 support is disabled).
Tested with: - RTL8188CE, RTL8188EU, RTL8821AU (STA / AP modes, i386) - (by kevlo) RTL8188EU and RTL8812AU (amd64)
Reviewed by: adrian (previous version), kevlo Differential Revision: https://reviews.freebsd.org/D9021
show more ...
|
#
67bc8c8b |
| 19-Nov-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r308491 through r308841.
|
#
800762ee |
| 14-Nov-2016 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn: drop excessive includes.
Since rom_defs.h is included in rxxx_var.h there is no need to include both of them.
Submitted by: kevlo
|
#
5763f796 |
| 21-Oct-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r307383 through r307735.
|
#
7453645f |
| 17-Oct-2016 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
rtwn(4), urtwn(4): merge common code, add support for 11ac devices.
All devices: - add support for rate adaptation via ieee80211_amrr(9); - use short preamble for transmitted frames when needed; - m
rtwn(4), urtwn(4): merge common code, add support for 11ac devices.
All devices: - add support for rate adaptation via ieee80211_amrr(9); - use short preamble for transmitted frames when needed; - multi-bss support: * for RTL8821AU: 2 VAPs at the same time; * other: 1 any VAP + 1 sta VAP. RTL8188CE: - fix IQ calibration bug (reason of significant speed degradation); - add h/w crypto acceleration support. USB: - A-MPDU Tx support; - short GI support; Other: - add support for RTL8812AU / RTL8821AU chipsets (a/b/g/n only; no ac yet); - split merged code into subparts: * bus glue (usb/*, pci/*, rtl*/usb/*, rtl*/pci/*) * common (if_rtwn*) * chip-specific (rtl*/*) - various other bugfixes.
Due to code reorganization, module names / requirements were changed too: urtwn urtwnfw -> rtwn rtwn_usb rtwnfw rtwn rtwnfw -> rtwn rtwn_pci rtwnfw
Tested with RTL8188CE, RTL8188CUS, RTL8188EU and RTL8821AU.
Tested by: kevlo, garga, Peter Garshtja <peter.garshtja@ambient-md.com>, Kevin McAleavey <kevin.mcaleavey@knosproject.com>, Ilias-Dimitrios Vrachnis <id@vrachnis.com>, <otacilio.neto@bsd.com.br> Relnotes: yes
show more ...
|