Currently, if there is no twt session present as part
of the twt get_status query with dialog_id = 0, host
returns failure.
Add support to include the session state, wake_duartion
and wake_interval for TWT get_status command with dialog_id = 0.
Change-Id: Ie59310dc07c9954da96cee6568de856be8f67652
CRs-Fixed: 2989788
Handle A-EDCA based on STA-SAP concurrency. Also, update
RTS profile based on the concurrency such that:
1) For STA and SAP concurrency, send STA's AP EDCA
params to fw. Also, for SAP or P2P Go, update the
value in Broadcast EDCA params as well so that it
should be broadcasted to other stations connected
to that BSS. Also, update the RTS profile value to
0x11. It will let FW disable SIFS bursting and send
RTS for every frame.
2) For standalone STA (can even happen after SAP/P2P Go
disconnects), if the parameters are updated, reset
them to original parameters and send them to FW.
Also, update the RTS profile value to the value
it was set before.
3) For standalone SAP (can even happen after STA
disconnects), if the parameters are updated, reset
them to original parameters and send them to FW and
reset the Broadcast EDCA params as well so that it
should be broadcasted to other stations connected
to that BSS Also, update the RTS profile value to
which it was set before.
Change-Id: Idb2b04b1b0bddb51cea9c5665847d04817a90aca
CRs-Fixed: 2949484
Fils info is stored per vdev. In RSO scan mode command, in FILS
TLV, the next ERP sequence number to be used in the next FILS
connection is sent to firmware and is filled from the vdev fils
info. But after roam sych event is received, the erp sequence
number is not updated in the vdev fils info, causing FILS roaming
failure.
Update the fils erp sequence number to vdev fils info after
roaming.
Change-Id: Ibc624d9c4b0fc535c430881d3033169b002c8419
CRs-Fixed: 2988113
According to new user request, add channel frequency 5745,
5765, 5785, 5805 to SAP mandatory channel list.
Change-Id: Icf1c96c07514f65a229e00d4330eaf0af5daa4ab
CRs-Fixed: 2987664
Some times there is delay in update of channel freq in vdev
because of which M1 channel freq is zero during initial
connection.
Fill freq from msdu start from rx_pkt_tlv.
Change-Id: Ia0a8f61c9113fbe5bc3ad932dcb67111b86629af
CRs-Fixed: 2964512
The delay before vdev stop is a global config,
no need to set for each interface separately.
Change-Id: I5760cf083a6749bb82cc88635a947f1d18308dfe
CRs-Fixed: 2904748
Currently, host sends DS param to fw based on
channel number but channel number may be same
in case of 6G and 2G due to which IEs can be
included in case of 6G which is not required.
Fix is to send DS param based on freq to
avoid addition of IEs in case of 6G band.
Change-Id: Ib711731fda3cfb0117478e6b1e026f40639a7fbb
CRs-Fixed: 2942323
At present the pre CAC is done based on original SAP's BW,
but usually the original SAP is on 2G and BW <= 40Mhz. The
requirement from user is to have higher BW on 5G. Hence, select
higher BW supported by SAP phymode to do pre CAC and move 2G
SAP to 5G pre CAC channel when pre CAC done successfully.
Also set the default MAX bw pre CAC to 80Mhz based on current user
request.
Change-Id: I3115da8eb649238da50b223c2587db96125ec813
CRs-Fixed: 2984084
This reverts the change to do the memset of SW2TCL desc consumed by
HW to zero.
Change-Id: Ie56207cf483643f6e294df23f5445ca853a75d51
CRs-Fixed: 2984818
In wlansap_get_csa_chanwidth_from_phymode(), update the
channel width correctly incase when SAP starts on 2.4GHz
and channel switch happens on 5GHz channel with BW 80 MHz.
Currently host modify the BW according to the original BW
20MHz is incorrect, it should be changed to 80MHz.
Update the BW correctly, it should not be limited to orig BW.
Change-Id: I9baf89d89eeb6407c7cda931b332bced38cc2154
CRs-Fixed: 2974565
Station sends the BA and upgrades to the next possible BA window
size upon receiving all frames successfully from the current
window. Some IOT APs go out of sync from BA window size of the
station when AP fails to receive the BA sent from station. AP
transmits the frames again with previous window sequence number
and won't be ack'ed by station hardware as BA window has already
moved ahead. So, station deletes the upgraded BA and tries
to fallback.
Ideally, AP is supposed to consider the fact that "the previous
window transmission was successful when station upgrades to next
window size". But some APs take little longer time to
recover/upgrade to next window size. Don't delete the BA
immediately and have some tolerance(3 seconds) as the previous
negotiated BA just got deleted.
Change-Id: I6b277223f02dac521316cec20bd5d958785cc2e9
CRs-Fixed: 2970714
Add DP reason code support for sending DELBA request,
so protocol layer can make decisions for special cases.
Change-Id: I4eeba3513820a98a15682190e40a06ce178d9441
CRs-Fixed: 2983544
There is a time involved between the smmu fault initiated
and the eventual system panic. In this time there is a
possibility of the nbuf history being overwritten losing
the information on the nbuf which might has actually caused
the SMMU fault.
Set the ssmu state and dont track the nbuf's when the smmu
fault is detected.
Change-Id: Ia9f422861cbb7bde1b498d8a88967616be99bb6e
CRs-Fixed: 2960063
Trigger SSR if pe session already exist for vdev, i.e vdev is
not in init state during connect req.
Also Add SSR if roam command timeout.
Change-Id: I83be76215f5c4daca2429a2528f825baabed92e3
CRs-Fixed: 2982362
After DUT STA connected 40M AP, if AP switch to 20M, DUT need update probe
rsp IE of current AP and send to upper layer, but ht info tlv length in IE
is changed by mistake for wrong ht info struct type is used, then android
can't parse ht info and following RSN IE, can't get encryption method
correctly.
Change-Id: I84eab86514601f1efb1fda792148e611c290925d
CRs-Fixed: 2977335
Currently sending IPA STA_CONNECT evt after setting the flag
is_authenticated to true, which causes STA_CONNECT evt not sent
always, this is a propagation error as its implementation is
different than mainline, so moving it ahead.
Change-Id: I5073bae0a1a6048de2b6da44cda92c0a7259d98a
CRs-Fixed: 2983093
In monitor mode in case of restart failure,
event WLAN_VDEV_SM_EV_START_REQ_FAIL is used to move the vdev SM
to init state. But this event will not be handled in
WLAN_VDEV_SS_START_RESTART_PROGRESS and thus the vdev stop/down
won't be sent for the vdev.
Use event WLAN_VDEV_SM_EV_RESTART_REQ_FAIL for restart failure
to send vdev stop/down.
Change-Id: I2db459136955b8dc2213c0251284a08a8f57aa57
CRs-Fixed: 2964875
Avoid connect try to next candidate after 20 sec and thus
try to limit max connecttime to 30 sec to avoid active command
timeout.
Change-Id: I039b3d99eb77cf0148d104053c3bac86d03ad204
CRs-Fixed: 2982358
Initiate WLAN_VDEV_SM_EV_START for connect only in INIT state
as if its not in init state the VDEV SM is not cleaned up, which
needs to be debugged.
Sending WLAN_VDEV_SM_EV_START can cause pe session leak if the
event is handled by VDEV SM and return success. This can eventually
lead to all the pe session in used state.
Change-Id: I8245a7985bb08b04008b4f833f9474947c1bf57b
CRs-Fixed: 2982070
Add sanity check for RRM global channel list to avoid
possible NULL-Pointer issue.
Change-Id: Icfbf5282304a549a0dc92889f83cb1a31dde15b2
CRs-Fixed: 2972194
Currently, rssi of rx data packet is not received as part of rx_tlv_hdr.
To mitigate this limitation, fill the average rx rssi received from
firmware in wmi smart monitor event which is stored in pkt_capture's
vdev_priv structure.
Change-Id: I3a1b7b766979816d6b17f05edc1c25d503edec1d
CRs-Fixed: 2958109
Add function to populate the rx average rssi received from target in
pkt_capture vdev_priv structure. The rx average rssi is received in
wmi smart monitor event.
Change-Id: I9206669b418a2245bb8d53920040fddea77ce06c
CRs-Fixed: 2969242
Register handler for wmi smart monitor eventid in packet capture
mode in lithium. Currently, wmi smart monitor event provides
average rssi of last ten received data packets.
Change-Id: Ieeea5cbef328b04f139f54e7a42d52a3cf25824b
CRs-Fixed: 2969245
Currently GRO flush is being skipped if bus bandwidth level
is low this is resulting in rx packets to be in queue for more
time and affecting over all RTT value.
To avoid this for non legacy clients GRO flush is not being skipped
even at low throughput level.
Change-Id: I5ce64ee2bd5f332cf4db38116b1bbf400220269b
CRs-Fixed: 2978843
When vdev down flag is set, rx thread needs to flush the
pending frames in a fixed timeout value. Overall scheduler
timeout value is 10s, fixed timeout for each thread is 4s,
so if more than two threads timeout happens, scheduler timeout
may happen and lead to crash. Change to use adaptive timeout
for each thread to make overall threads wait time less than 10s.
Change-Id: If8acdaf1cac9d776e15d3020c8152101eae74a0c
CRs-Fixed: 2973947