Details
- Reviewers
adrian - Commits
- rS312596: net80211: allow to configure LDPC support
Tested with RTL8821AU, STA mode (Tx support only)
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
I'm unsure about IEEE80211_NODE_* flags setup in ieee80211_ht.c - if user will play enough with ifconfig(8) parameters some nodes may be created without the flag but with ni->ni_htcap and vap->iv_flags_ht bits set.
Ideally nodes without NODE_HT / NODE_VHT set won't even do HT/VHT bits. If we have that happening we should fix it. :-)
This looks good; you've verified that LDPC frames actually are being transmitted appropriately? and negotation is working right?
As an example:
- driver handles IEEE80211_IOC_SHORTGI without restart;
- user disables it via 'ifconfig wlan0 -shortgi'
- some node with short GI support associates; since IEEE80211_FHT_SHORTGI20 bit is not set, htcap_update_shortgi() will not set IEEE80211_NODE_SGI20 for this node;
- user re-enables it via 'ifconfig wlan0 shortgi'; but IEEE80211_NODE_SGI20 for the node will not be set.
(for rtwn(4) I prefer to check ni->ni_htcap and vap->iv_flags_ht instead until this bug exists)
This looks good; you've verified that LDPC frames actually are being transmitted appropriately? and negotation is working right?
When LDPC (for Tx only) is enabled:
- RTL8188CE in monitor mode can see only received frames (sent without LDPC) + all control frames.
When it is disabled:
- all frames are seen (by RTL8188CE - RTL8188EU can't see Tx data frames in both cases).
In both cases, Tx / Rx between STA (RTL8821AU) and AP (Netis AC1200, RTL8812AR) works fine.
Association request is sent without LDPC capability bit set; assoc response has this bit set.