Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wifi:todostuff [2020/07/15 17:15] – AdrianChaddwifi:todostuff [2021/06/06 02:46] (current) – add CategoryWiFi MarkLinimon
Line 1: Line 1:
-====== Random Wifi (net80211, driver) wishlist ======+====== Wifi (net80211, driver) wishlist ======
  
 ===== net80211 ===== ===== net80211 =====
  
-%%=%%= IBSS ===+==== Global state ==== 
 + 
 +  * Review the use of ic->ic_curchan versus per-VAP and per-node channels; ic_curchan should only be used by NICs that need net80211 to change channel/configurations. 
 +  * Update the per-VAP / global state for 11g ERP, short/long slot time, WME, HT protection, etc to assign the state per-channel, not per-VAP - so the IEs reflect reality on the given channel rather than using the "global" state currently being faked. 
 +  * Look at what it'd take to push node creation/deletion, encryption key management and transmit/receive traffic handling into asynchronous callbacks rather than synchronous driver calls. This will allow drivers that need to sleep (ie, firmware!) to sleep in their callbacks, and remove having to do all of the update deferral inside of each driver. 
 + 
 +==== Encryption ==== 
 + 
 +  * Need CCMP-256 key support (11ac, 11ax) 
 +  * Need GCMP-256 key support (11ac, 11ax) 
 +  * Add support for the >1 pairwise key that showed up in 802.11-2016 
 +  * Explicitly tag keys as pairwise and remove the pointer-comparison logic done to determine if a given key is pairwise or not; it's dumb and error-prone 
 + 
 +==== IBSS ====
  
   * (done) implement WME and HT info field parameter configuration and parsing when "seeing" neighbor 802.11 ibss/mesh nodes;   * (done) implement WME and HT info field parameter configuration and parsing when "seeing" neighbor 802.11 ibss/mesh nodes;
Line 18: Line 31:
   * .. and I guess whilst here at least add in the bits for correctly handling the greenfield bits during HTCAP/HTINFO and assoc/beacons; because at least THIS bit isn't set.   * .. and I guess whilst here at least add in the bits for correctly handling the greenfield bits during HTCAP/HTINFO and assoc/beacons; because at least THIS bit isn't set.
  
-===== 802.11s (mesh) =====+==== 802.11s (mesh) ====
  
   * fix the "current TX rate" logic for link estimation, it shouldn't use ni_txrate at all   * fix the "current TX rate" logic for link estimation, it shouldn't use ni_txrate at all
Line 26: Line 39:
 ==== 802.11ac ==== ==== 802.11ac ====
  
-  * Need CCMP-256 key support; 
-  * Need GCMP-256 key support; 
   * Need to add the TX beamforming, SMPS status change, etc callbacks to net80211 so the driver gets notified;   * Need to add the TX beamforming, SMPS status change, etc callbacks to net80211 so the driver gets notified;
-  * (adrian - in progress) Need to migrate the rest of the 11g protection (barker/preamble/etc) changes to be per-VAP and into vap notification callbacks;+  * (done) Need to migrate the rest of the 11g protection (barker/preamble/etc) changes to be per-VAP and into vap notification callbacks;
   * Update the channel width (80+80, 160) negotiation to the 802.11-2016 spec rather than the draft 11ac spec; the meanings of the bits changed a little in the released final spec because of implementation incompatibilities;   * Update the channel width (80+80, 160) negotiation to the 802.11-2016 spec rather than the draft 11ac spec; the meanings of the bits changed a little in the released final spec because of implementation incompatibilities;
   * Add support for PMF/MFP (management frame protection) - hardware and software encrypted ones!   * Add support for PMF/MFP (management frame protection) - hardware and software encrypted ones!
-  * Add support for the spatial stream grouping for 11ac AP/STAs+  * Add support for the spatial stream grouping for 11ac AP/STAs (MU-MIMO)
  
 ==== Interesting IE's to add (as mini projects) ==== ==== Interesting IE's to add (as mini projects) ====
Line 155: Line 166:
  
   * when doing TDMA, ensure that chips that implement the TX "abort if it will exceed %%TxOP%%" option is enabled;   * when doing TDMA, ensure that chips that implement the TX "abort if it will exceed %%TxOP%%" option is enabled;
 +
 +----
 +
 +{{tag>WiFi}}
  
  • wifi/todostuff.1594833347.txt.gz
  • Last modified: 2020/07/15 17:15
  • by AdrianChadd