Friday, 25 May 2018

802 11AC - OPeration

- ACS(automatic Channel Selection)
- Adjust the HT Max MPDU based on VHT capabilities
 If VHT max MPDU is 8K or 11K, set HT AMSDU to 8K else to 4K.
- Prepare Beacon and Probe Response packets with VHT Capabilities IE and VHT Operation IE
- Start beaconing




Operation:
Channelisation - Based on the country code, channel are fetched from the regulatory domain


1. Prepare list 80MHz channels - Hard code the channel OR get them from  the frequency band of the reg domain
        - Start with chn  = lowfreq + 30.
        - chan >= lowfreq && chan =< highgreq - 30, then chan is 80Mhz
        - Hop to next freq chan+80


2. Similerly prepare list of 160Mhz channels out of freq bands.


3. If user has configured any operating channel and bandwidth, get the centre_freq1 and centre_freq2
pass the same information to FW.




1. Processing Assoc Request and Responding with Assoc Response
   
STA and AP need not have same transmitting and receving capabilities. Example STA may have 1x1 and AP may be 3x3.
Before sending assoc response to STA, assoc req needs to be parsed


A)    Intersection of Tx and Rx rates[MCS set].
     - TX MCS set of AP is intersected with RX MCS set of STA,


           TX AP       RX:STA
1SS     0-9             0-7
2SS     0-9              NA
3SS     0-9              NA


After intersection only MCS set 0-7 for 1SS is selected for transmitting frame to that STA


b) Channel width: Minimum bandwidth value of AP bandwidth and STA bandwidth is selected as bandwidth for Rx/Tx with that STA





Wednesday, 9 May 2018

NAPI Driver

NAPI driver:

netif_napi_add(netdev, contex,poll api
napi_enable
napi_schedule
https://wiki.linuxfoundation.org/networking/napi