Print info related to WTC BTM roaming coming via
wmi_roam_trigger_reason_tlv_param.
Print timestamp, which indicates the time when btm response is sent
to AP, coming via wmi_roam_btm_response_info_tlv_param to HOST.
Change-Id: I2c408527739e1e2831015dd7b959ab17299abf6b
CRs-Fixed: 2740597
Dynamic rx aggregation feature depends on the context
id which is obtained from the packet context block.
This context id is invalid when this feature is not
enabled, and hence can lead to out of array access/write
leading to memory corruption.
Fix this issue by not using the context id when the dynamic
rx aggregation feature is not enabled.
Change-Id: Ie551217409b0f5aa2f704f9c617949e0d42a74d0
CRs-Fixed: 2742653
In scenarios where p2p is going to be the first connection,
while performing group negotiation, pass up the allowed non-pcl
channels with valid weight so that supplicant can include these
channels as well during negotiation.
Passing interface mode to policy_mgr_get_valid_chan_weights and
populating the channel list based on policy_mgr_is_concurrency_allowed
api for the given mode and assign WEIGHT_OF_NON_PCL_CHANNELS for all
allowed channels.
Change-Id: I8ff08163e6490642f9c2ebd9ca08f1275a2bb1b8
CRs-Fixed: 2734756
During the init sequnce host and firmware exchange the capability
messages, if there is any timeout driver currently induces the fatal
to debug the issues.
If the reason for the timeout is beacaue is because of firmware is
already recovering gracefully return resulting in probe failure.
Change-Id: I487aeae23db37a0ad2d991bae113b221e19a439a
CRs-Fixed: 2742638
If it is LFR2.0 roaming and BTM trigger, original procedure is always
stopping roaming scan with reason REASON_OS_REQUESTED_ROAMING_NOW,
After roaming stop configured, it will check the stop reason and post
eWNI_SME_ROAM_SCAN_OFFLOAD_RSP to invoke host handover to new AP.
Currently the roaming scan logic is changed, if roaming scan not in
enabled state, it will not invoke roaming scan stop, so host handover
cannot invoke when BTM.
And even roaming scan was enabled, the stop reason was override to
REASON_SME_ISSUED in csr_post_rso_stop(), also cannot invoke handover.
Fix it by check the stop reason against REASON_OS_REQUESTED_ROAMING_NOW,
which indicate it is LFR2.0 reassociation invoked by supplicant.
Change-Id: I39a84d06b9c696179da1b854985a23b874a399c5
CRs-Fixed: 2737888
Set the user power save configuration setting in NL power save
command handler.
Change-Id: I8f4d1955071af08a5c0511a4c01c46d79e70e1b0
CRs-Fixed: 2743237
AGO/AP is started and beaconing, but the hostapd_cli status cmd still
show "dfs". This will happen when the STA connected on DFS
channel and AGO/AP is starting on same DFS channel.
By design the AGO/AP CAC is skipped due to STA+SAP DFS concurrency.
If we skip CAC timer, we will need to indicate the CAC event
even though driver doesn't perform CAC, otherwise hostapd will
stuck in "DFS" state.
Change-Id: I7961d0b976fd84fc1f29449d98eb150d1463a92f
CRs-Fixed: 2733624
It will enable periodic capture of tsf and qtime pair.
The qtime will be used as reference for determining
instantaneous tsf.
The 'cat tsf’ command to fetch tsf will print the tsf
at that instant as well along with qtime and host time.
CRs-Fixed: 2736030
Change-Id: I11eb70d4ae710ef2bf50ebee708801fa67d0396c
Issue: Currently host supports WLAN_AKM_SUITE_FT_8021X_SHA384,
RSN_AUTH_KEY_MGMT_CCKM and RSN_AUTH_KEY_MGMT_OSEN AKM
in sta mode but doesn't advertise these akm suites which
may cause issue for FT_8021X_SHA384, RSN_AUTH_KEY_MGMT_CCKM
and RSN_AUTH_KEY_MGMT_OSEN supported connection.
Fix: update wiphy->iftype_akm_suites and advertise missing akm
suites.
Change-Id: I43762c38e15746f50f897a6026b1b96fd571ec4d
CRs-Fixed: 2713183
- Limit the timeout value of the BLM entry if it has big comeback
value and allow connection to that BSSID.
- Fix the BLM entry time stamp boundary checks.
Change-Id: I07bf7b1fce1c1e8d349c4fc0a9b0fed07f237197
CRs-Fixed: 2741689
Possible use of uninitialized Variable "report" in
rrm_process_beacon_req.
Fix is to initialize "report" pointer to NULL,
before use.
Change-Id: I1dcbec60b0028d52046ce28836df83a04e2ed830
CRs-Fixed: 2734078
During idle shutdown(T1 Thread), Driver sends the PDEV
suspend command to FW. If ACK is not received, driver initiates
the work for self recovery. As a part of self recovery(T2 thread)
driver allocates the memory and sends the force fw hang cmd and
wait for the event.
T1 thread continues and stop all the modules and check for mem leaks.
Since t2 thread is not completed and free the memory, the crash
happens as a part of mem leak check.
Fix this race condition by cancelling and flushing the recovery work
in cds close.
CRs-Fixed: 2730021
Change-Id: Ieffff621e0838b341531c5b7feda1277ee4f70fd
In wma_get_trigger_detail_str() driver prints the roam trigger
detail for Low rssi and Periodic scan triggers, the RSSI value of
the current AP is the value before roam scan is triggered. But
the firmware considers the rssi of the current AP after roam scan
is complete to calculate the next RSSI threshold. So there could
be mismatch in the current rssi value and next rssi threshold
when roam_info->rssi_trig_data.threshold is used to print the
current AP rssi.
Use roam_info->current_rssi to print the current connected AP
rssi in the roam trigger logging.
Change-Id: Ib154bb3cbdfe13dbcdd8c8830cdafb6daefa34b5
CRs-Fixed: 2739346
Since there is common API to get spectral version, so use ucfg API to
get spectral version directly and remove unused codes.
Change-Id: Icfd4c68a035166dcaa32478128107249df2c4c95
CRs-Fixed: 2575839
Currently, bus bw timer is not stopped if STA disconnection is
timed out. Due to this hdd_bus_bandwidth_deinit fails.
Force stop the bus bw timer during hdd_wlan_stop_modules to avoid
hdd_bus_bandwidth_deinit to fail.
Change-Id: Idcdf011383838f1dc061f3e0f32ada97e617a8c9
CRs-Fixed: 2739304
As part of beacon report request , currently driver sets last
beacon report indication data field to be 1 for last frame of
every channel. This is incorrect as per spec as the
expectation is to set this only after all channels of all
beacon measurement requests are done.
Add change to set the last beacon report fragment bit only
after measurement is complete on all channels for all the
measurement request index for a beacon report request. If
last channel has empty result and AP supports last beacon
report indication, then send empty report with last beacon
report indication element.
Change-Id: Ic8902b61c5a370ec828022cd73dffdef9eb37f32
CRs-Fixed: 2720249
In DUT sta mode, when tcp/udp stream between sta and PC ethernet at same
subnet, dst mac addr of each tx skb is not bssid, but ethernet mac of the
PC. Since only self peer and bssid peer are created on DUT, the ethernet
mac addr of the PC can't be found from peer list at all by
ol_txrx_peer_find_hash_find_get_ref, ol_txrx_peer_get_ref_by_addr and
ol_txrx_get_vdev_by_peer_addr return NULL. For each tx skb, 2 txrx log
will print and be saved to storage by cnss_diag, throughput is impacted
and LEGACY_TX_FLOW_CONTROL doesn't work too.
Fix: In sta mode, use connected bssid to find dp peer and vdev.
Log sample:
18769633: [soft_i][0x650c858e][08:11:05.109017]wlan: [0:IH:TXRX] PDEV
not found for peer_addr:a0:36:9f:21:18:88
18769633: [soft_i][0x650c85b3][08:11:05.109019]wlan: [0:IH:TXRX]
ol_txrx_get_tx_resource: Invalid peer address: a0:36:9f:21:18:88
Change-Id: Ib87bbe5cbb1c8d0aa31d06b32dc98d9b3b9456b3
CRs-Fixed: 2715377
Add support to enable or disable GRO per adapter at
runtime based on the ingress qdisc registered for the
net device. Disable GRO when ingress qdisc is configured
and enable GRO when there is no ingress qdisc configured.
Change-Id: Ie9ced2c92d176c040bc44da4cee93db55c6a335a
CRs-Fixed: 2739414