Currently, if the AP advertises both Local and Regulatory
TPE IEs in the beacons, STA uses an INI to choose one over
the other. Vendor ask is to change this logic and allow STA
to use the minimum of the two TPE power limits. Also,
deprecate the INI that sets the preference between local
and regulatory TPE IEs.
CRs-Fixed: 3574510
Change-Id: Ibf19020d59621efa72cf290ef34c825fdb50e3e7
After roaming to 3 link AP, update the MLO manager with the
self link address received from the roam synch indication.
Change-Id: I6258abe7bb9e140307c30fee8701ef12a618d9f1
CRs-Fixed: 3591487
Support wpa_cli driver GET_MAX_BW with link_id and bandwidth.
Support get all MLO 2links link id and bandwidth.
Change-Id: I304b581fa06db23281422cafeecd0f6a868eee14
CRs-Fixed: 3544825
Currently host driver is using roam_sync state to update the
roam count in connection info structure. Connection manager
clears this roam sync state before it host invokes the save
bss info API where it actually updates the roam count in
connection info structure, this leads to the incorrect information
update in connection info structure.
To address the above issue, use the is_reassoc state from connect
response structure in save bss info API.
Change-Id: I0d35f04b7e2492fe96a23edefc0caf002acb6537
CRs-Fixed: 3591711
lim_check_oui_and_update_session call location is changed by
Change-Id: Ib99072c36b72859cb1f8a4336f8aa7f696cb7d02.
session->nss is initialized in lim_check_oui_and_update_session,
it should be called before lim_extract_ap_capability->
lim_check_is_he_mcs_valid, or he capable of session is disabled,
he cases will fail.
To fix it, lim_check_oui_and_update_session call location is changed back
to follow lim_join_req_update_ht_vht_caps.
Add new function lim_disable_bformee_for_iot to handle IoT issue,
since it need get channel width of session, let it be called after
lim_extract_ap_capability.
Change-Id: Ice1d86b3f6711a116b94cd139aae87f249c554d4
CRs-Fixed: 3600303
Add a sanity check for validating vdev_id in the function
sme_set_wlm_latency_level. If Invalid vdev_id is passed down
it might lead to an assert in firmware.
Change-Id: Ie410d2655a607628b0741c9efd1fbfaa00c5dc78
CRs-Fixed: 3599133
Currently, CONFIG_TSPEC_TSID is used as handle to
add and delete TSPEC requests. The tsid sent by
upper layer is same as handle because there is
no separate param for handle, so host always rejects
to add new TSPEC request because already one request
is registered with same handle.
To avoid the issue host can internally modify
handle and can add request with modified handler.
During DEL TSPEC Provided ts_id can be used to
delete the entry.
Change-Id: I6d1231bc6516d2642739d5d1011c847b32472160
CRs-Fixed: 3580003
Add support for STA info logging via api
wlan_connectivity_sta_info_event()
STA info logs is sent immediately after the
connect request initiated from userspace.
Change-Id: I92c42c9ca27f90acae23452e8fba1f2b20396214
CRs-Fixed: 3597543
When wpa_supplicant adds tdls peer during sta disconnecting,
scheduler thread clear MLO flag of vdev0, in wlan_key_get_link_vdev,
wlan_vdev_mlme_is_mlo_vdev(vdev0) return true, in
wlan_key_put_link_vdev, wlan_vdev_mlme_is_mlo_vdev(vdev0) return false,
WLAN_OSIF_TDLS_ID vdev ref count is released in both
wlan_key_get_link_vdev and wlan_key_put_link_vdev, while
WLAN_MLO_MGR_ID vdev ref count isn't released, assert will happen.
To fix it, add check in os_if, if vdev not up, reject tdls add peer to
avoid such race condition issue.
Change-Id: I851b269ee4a5649fe76cfa1fc6762b6ca41b0884
CRs-Fixed: 3598336
During refill thread cleanup shutdown event is posted and
we wait for thread to handle the shutdown event and exit.
But while posting shutdown event if refill thread is in running
state then there is chance of shutdown event not getting handled
and thread cleanup will be waiting indefinitely for thread to
exit.
Change-Id: I45bdad8d6a85b110ed7c7e206d3c79c5c03e9d98
CRs-Fixed: 3599295
Currently for STA case host driver set only connected bandwidth
in peer_flags.
If STA is connected in 320 MHz bandwidth, suppose AP send CSA,
STA downgraded to 160 MHz bandwidth but host sent only 320 MHz
flag set in peer_flags, this leads FW to unexpected behavior.
So, set all supported ch_width in peer_flags, if STA is connected in
320 MHz ch_width, set 160 MHz, 80P80 MHz and 40 MHz ch_width bits
also to solve this type of scenario.
Change-Id: I43328ac85c25913ad808abf6ab906827a9672b51
CRs-Fixed: 3557108
Since peer link status bases on vdev and stream goes through
vdev0 (assoc link) at start, rx/tx pkt count on vdev0, but
it choices vdev1 as tdls link, the peer status does not change on
vdev1 though it has been changed for vdev0 per the rx/tx pkt count.
To resolve this issue, set peer link status properly when forward
discovery response frame.
CRs-Fixed: 3590371
Change-Id: Idfb0b8c43e3b8d5b67a387ba3b877def15130eb6
Currently, log is added when any frequency is populated
as usable channel frequency along with mode, band and other
params which could lead to multiple log addition if Band set
is ALL bands.
The change is to remove unwanted logging.
Change-Id: I02221df6a43aa0de8d79cb973adf124a5c52f89b
CRs-Fixed: 3579443
There are two APIs wlan_get_opmode_vdev_id and
wlan_get_opmode_from_vdev_id present in the host driver for the
same task.
With this change, remove the duplicate API wlan_get_opmode_vdev_id
from the host driver code.
Change-Id: I7ff45610ff18da9c002e22c5be06f1414d3835bc
CRs-Fixed: 3593560
Local var addr is passed as msg body to another thread,
and dereferenced in another call stack.
Change-Id: I402cff3e1fc4d3c46486cd9776680faa818600b4
CRs-Fixed: 3596800
when connect to IoT AP and BW is 160 MHz and max NSS is 2,
disable SU/MU beamformee.
Change-Id: Ib99072c36b72859cb1f8a4336f8aa7f696cb7d02
CRs-Fixed: 3583339
Currently the station stats cached timestamp is updated
in the adapter, even when vdev station stats are not
requested as part of unified_ll_stats_get_sta command.
When userspace requests vdev station stats, based on
timestamp value host either returns cached stats or sends
a new WMI request to firmware. In case of timestamp updated
when vdev station stats are not cached, it results in
sending inaccurate station stats to userspace.
To avoid this issue, update cached timestamp in the adapter
only when station stats are requested as part of
unified_ll_stats_get_sta command.
Change-Id: I8cdbd120afdf1f6334d7ac3fa150fc853f550a09
CRs-Fixed: 3598671
Enable the CONFIG_HIF_DEBUG for the HST module to get more info for
further debugging.
Change-Id: I911930b4fce50ad5a190e6c0da2248678199231d
CRs-Fixed: 3597078
scenario:
fisa_flow->head_skb freed in dp_fisa_rx_get_flow_flush_vdev_ref(),
but fisa_flow_vdev returned from dp_fisa_rx_get_flow_flush_vdev_ref()
is not NULL, dp_rx_fisa_flush_udp_flow() will still try to deliver
fisa_flow->head_skb to stack, use after free.
return NULL if dp_fisa_rx_get_flow_flush_vdev_ref() has freed
fisa_flow->head_skb.
Change-Id: I5a467db63377e6b5f36c4bb1dfa0e3f35b73a442
CRs-Fixed: 3596691
Currently, for mlo link layer stats, vdev object is used
to get link_id and channel frequency. Instead of vdev object,
hdd station context can also be used to obtain those values.
Hence, refactor the code.
Change-Id: I90110ed0250f1d71539b44813ecb5d94c731039d
CRs-Fixed: 3595398
Enable Flexible TWT when TWT feature is enable and either of
the TWT Requestor or Responder capability is enable.
Change-Id: I2f2b1c311d9aba6e09d309e83f37098175b80767
CRs-Fixed: 3422493
currenyly, hdd_medium_assess_stop_timer is invoked during stop_ap
and congestion report disabled. but init is done during congestion
report enable and based on timer flag. So, Assert will be caused
if timer is destroyed due to congestion report disable then stop
AP comes.
Fix is to add timer enable check and based on it call the stop
timer API.
Change-Id: I192b94a08cd07b2be14b2c75b44b3c6a7634b91a
CRs-Fixed: 3589172
Introduce diag logging for STA info event and MLO events
via eventid EVENT_WLAN_CONN_STA_INFO, EVENT_WLAN_MLO_SETUP,
EVENT_WLAN_MLO_RECONFIG, EVENT_WLAN_MLO_T2LM_STATUS,
EVENT_WLAN_MLD_T2LM_REQ_RESP, EVENT_WLAN_MLO_T2LM_TEARDOWN
and EVENT_WLAN_MLO_LINK_STATUS
For MLO specific events band, link_id, status, tid_ul,
tid_dl, token, tx_status, reason active_links and
previous active links are sent.
For STA INFO event is_mlo flag, mld_macaddr, 2.4GHz_mac,
5GHz_mac and 6GHz_mac.
Change-Id: I1aa6195a481319f85cad26893789439c5c8291ea
CRs-Fixed: 3568508
Reject MLO station stats and Link Layer stats request from
userspace when link switch is in progress.
Change-Id: I755dcf3da69f5378cba0602ed085981af35fe38b
CRs-Fixed: 3594723