Currently host driver doesn't fill peer mac address
per ml vdev for station stats request as part of peer
stats request hence incorrect stats sent to userspace.
To address this issue, save peer mac per ml vdev in
request info structure.
Change-Id: Iebb1b810e112743602607e31d779be2ba1d48f90
CRs-Fixed: 3450665
Rename policy_mgr_is_sap_allowed_on_indoor() to
policy_mgr_is_sap_go_interface_allowed_on_indoor() since
it is common between SAP and GO. Cleanup the API as well.
Change-Id: I8380bd81c5050e9f12c00fff830455f14135c2b4
CRs-Fixed: 3423703
Send QMI misc request message to WFDS server and wait
for response before cleaning up the resources pertaining
to WFDS server on LPASS.
Change-Id: I24bc2295c5a625365a6da95be697c46b08f8b6b7
CRs-Fixed: 3448838
Add support for sending QMI WFDS misc request to QMI
server on Direct link deinit.
Change-Id: I611625d83719c0f8a7dfbef1d3c8328cb618ef7f
CRs-Fixed: 3454630
Since for MLO there may be several link connections, for TDLS
using api policy_mgr_get_connection_count_with_mlo() to replace
with policy_mgr_get_connection_count() to follow the original
logic.
Change-Id: Ic13c89f2e834196c01ca6966329cbd0d1552f292
CRs-Fixed: 3436049
Inorder to send out the tdls management frame properly,
1\ Make sure to use assoc vdev id when transmit frames;
2\ TDLS discovery response is sent to peer directly;
3\ TDLS link identifier IE is using mld mac address.
Change-Id: Ib34b6a5070e0acdf41668f44e5b5250761eb936e
CRs-Fixed: 3439343
Wrong debug ID is used (WLAN_OSIF_ID) to increment the ref
count of the pdev object when sending tx params update event.
This is causing crash as ref count is decremented using
different id, WLAN_DP_ID.
To fix this, use WLAN_DP_ID to get the pdev object and increment
the ref count of right debug id.
Change-Id: If20fc1a4e4c2a37287f7703aa70bb8dc556f0125
CRs-Fixed: 3453570
Upon reception of assoc request from an already associated
PMF-enabled STA, the SAP is expected to start SA-Query
mechanism.
On the other hand, host driver drops all the
retried assoc request frames if the STA is already in
connected state. This is valid as long as the original
assoc request is currently under processing(to prevent
duplicate processing). However, for reassoc attempt cases,
this assoc request with retry bit set could be the first
assoc request under processing.
Therefore, change the logic to drop only retry-bit set
assoc requests in non-PMF STA cases.
For PMF-enabled STA, drop the assoc requests only if
key installation is pending. Otherwise, send SA query.
Change-Id: I1f3a564864e70f4e11994698389be427ac202fa3
CRs-Fixed: 3446033
Rename wlan_cm_set_offload_ssid() to
wlan_cm_update_offload_ssid_from_candidate().
Also, add separate APIs for get and set roam_offload_bssid.
Change-Id: I64d6661a265aeafde7c09fa59bc94cf7a49baf0b
CRs-Fixed: 3445337
For HL targets, frames are queued to ol_rx_thread_queue
during WoW suspend in progress. At this time ol_rx_thread_queue
is in SUSPEND state and these frames can't deliver to Linux
Stack.
for ICMP case, if no other frames come to wake up
system and ICMP timeout will happen.
This change is to add rx thread status check API for HL
targets.
Change-Id: I3d37e6d6ce8f7f6edaf5f78bf5cef77bee6ed523
CRs-Fixed: 3407169
Dynamic sync stop will abandon on going tsf sync process and the
host_capture_req_timer is not being stopped. If dynamic TSF sync
start NL command handled before host_capture_req_timer expires,
Then the host_capture_req_timer gets re-initialized due to which
already running timer will crash on expiry.
Initialize and destroy the host_capture_req_timer as part of
TSF sync feature start/stop instead at every TSF sync.
Change-Id: Ie3f4bf51e6b123bc4ef41cd27ca2efacc64b5ab5
CRs-Fixed: 3426416
Currently, OWE assoc link scan entry is cached post roam success
but link scan entry is not cached. This causes join failure while
non-assoc link tries to get connected post assoc link roam.
So, cache scan entries of all links while processing first link
itself to avoid these failures.
This also fixes adding scan entry properly for non-MLO OWE
cases as well.
Change-Id: I3188f98f2682acceaae28f226e6c8abe0c81fff9
CRs-Fixed: 3437632
Check pointer adapter returned from function which maybe NULL,
and explicitly dereferenced error.
Change-Id: Iaaf4bdfb145a146452a5925ac39483e32ed8955e
CRs-Fixed: 3454288
Firmware do not send WMI_PEER_STATE_CHANGE_EVENTID when WMI_PEER_AUTHORIZE
peer param is sent from host on peer. Host waits for this event from
firmware for 10ms and then times out. This leads to unnecessary delay of
atleast 10ms in enabling the TX queues every time after connection and
roaming.
So this change cleans up the existing handling of WMI_PEER_STATE_EVENTID
and removes wait for sta_authorised_event. This will improve the latency
in enabling the queues from host.
Change-Id: Iaf54d8298dab3cd47ad4779ec9ee11dc8f0bad0d
CRs-Fixed: 3436763
Currently, when ML probe response is received in non-assoc link
channel, right link_id is not passed to the link_probe rsp
generation API as it loops through all available per STA profiles.
It fails when probe rsp received link id is given as corresponding
per STA profile is not present in the probe rsp.
Skip calling the ML probe rsp generation API for
the link id on which it's received.
Change-Id: Ib636c6d5909b7f2760c7e57ec4f14f8ed060a910
CRs-Fixed: 3428521
The rate table is lacking in rates info of mcs=10/11 in VHT
mode. This leads to failing to match a rate with rateflags
from FW sometimes. To address this issue, this change fills
out this rate table when mcs=10/11 in VHT mode.
Change-Id: I6f63339bed2f9d53838f02177c63bc128856a991
CRs-Fixed: 3448862
Add new api for tdls mld feature:
ucfg_tdls_get_mlo_vdev
ucfg_tdls_release_mlo_vdev
ucfg_tdls_discovery_on_going
Change-Id: I874fd5ef1af94a9e576ba6738a12b7e2af891537
CRs-Fixed: 3439345
Currently cck and ofdm flags are filled wrongly for monitor
mode data packets based on preamble and wireshark deriving
incorrect phy type for 11G & 11B.
This change is to update cck and ofdm flags based on packet
type.
Change-Id: I5fcdc463ea2a6d83253e39cc377a2471aeb4e144
CRs-Fixed: 3447567
Currently, For legacy modes monitor mode reporting incorrect tx rate
for data packet in radiotap header due to packetcapture_hdr rate
is hardcoded as '0'.
This change calculates the data rate of legacy packets using mcs
reported in tx completion.
Change-Id: I2a651b8fb36947672bd30f8a635f0e643219e520
CRs-Fixed: 3442376
Currently monitor mode HT & VHT data packet tx rate is not
matching with ota packet tx rate due to incorrect mcs value.
This change is to update proper mcs value for HT & VHT modes.
Change-Id: Ib4fb06a06ce35a4e8e683e5a22c8be226492b13f
CRs-Fixed: 3442509
In SAP+STA scenario, if SBS mode support, should check if meet SBS
condition before check MCC/DFS constrain.
Change-Id: Id20145dfffabc6e649d0511db8eeab27595e16d1
CRs-Fixed: 3447053
Reduce the log level of logging from warn to debug which occurs
during roaming.
Change-Id: I623ce4f6ba9fa4a54e3b06c6833f4630f49d7f44
CRs-Fixed: 3449210
Channel boundary which overlap all unsafe channel list will
be treated as unsafe channel, SAP can't setup on this channel.
Change-Id: Id8ab89da3ca3af1c86007e31fd79b8737e5cd4e5
CRs-Fixed: 3424013
Currently in peer_ll_stats, host queries vdev_id based on the
peer mac address sent by firmware. In error case, host returns
error code and fails to free the allocated memory causing memory leak.
Fix this issue by refactoring the error case.
Change-Id: I4097b6d7920f4a5f3f9fa39ad2892f8428bab5d7
CRs-Fixed: 3450421
Add MLO link identifier and EHT cap to tdls discovery request,
discovery response, setup request and setup response.
Pack Multi-Link IE for TDLS mgmt frames.
Change-Id: I6a1c23087a0b7caddd840e13ed1b85b51f2da324
CRs-Fixed: 3436047
Send the driver disconnect internal reason code as an event to user space
using QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASON vendor command.
Change-Id: I19959e097c5709d63fbd941583b934e291c3af1c
CRs-Fixed: 3371396
If roaming to Multi-link AP but get auth status 1 (connected) from FW,
driver will make it as single link roaming. The link vdev roam
sync will be skipped. The wma_roam_update_vdev API doesn't
check such condition and lost the peer deletion of the old AP.
Fix by check single link roaming with API mlo_get_single_link_ml_roaming
to consider such condition.
Change-Id: Ia69333e8249c4a868554f8fd9a99340fde9257b0
CRs-Fixed: 3448269
To fix the code segments which are less reader friendly.
The changes are identified from single netdev changes
in Ia1f01865277c3e08254f44a39ba6675a9fea6c65
Change-Id: I3d09fb5d9f578514b00c9c9045acf7bd7e208140
CRs-Fixed: 3445321
Existing check for 4 vif concurrency in policy_mgr_allow_4th_new_freq
is insufficient to handle the case: ML STA on 2412 MHz and
5805 MHz, GO on 5180 MHz, SAP on 5805 MHz. Then user trigger
SAP CSA to 5240 MHz. Driver should reject the CSA because
DBS or SBS both can't meet the requirement that 3 VIFs MCC is not
supported in same mac.
Fix by loop all the hw mode to check vif channel and mode
combination are supported or not. If no one support the combination,
reject the 4th connection.
Change-Id: I67709395f7734d1f636a1410ac112a837cb66e79
CRs-Fixed: 3446747
Since we fill roam information into a ring buffer, when ready to
write a buffer, we need clear the dirty data first.
Change-Id: I94dac785803f15451df816c303f8a594ee688ff7
CRs-Fixed: 3437152