Change ucfg_tdls_notify_connect_failure() API as a
wrapper to a new API wlan_tdls_notify_connect_failure()
which in turn calls the core API.
Change-Id: I998669f9c829cb91e21b359ba794f396214854e2
CRs-Fixed: 2767682
Remove band dependent code in iw_get_channel_list, use
existing ucfg api ucfg_reg_get_current_chan_list to get
the current channel list.
CRs-Fixed: 2773016
Change-Id: Ie650620476a35852456d91363cc7360cb1549f40
Add disconnect start and disconnect complete event handlers to
the interface manager.
Add disable roaming, enable roaming on connnected STA, and
enable roaming after P2P disconnect APIs.
This change is part of the connection manager effort.
Change-Id: Ib68b9ef9ff5b6541d7393bfbe6332a68b17bd587
CRs-fixed: 2760090
WMA module wants to insert recored in the global qdf trace
record table but qdf trace does not allow to insert the trace
record for a module if that module is not registered with the
qdf trace.
To address above issue, register WMA module with the qdf trace.
Change-Id: I5520beaacdb3aeb57c2f46a36766b4f9a73a4e0c
CRs-Fixed: 2719693
Driver maintains a global list of messages (qdf trace) which
different modules posts to each other. If required, this list
can be processed with the help of post processing cmm script.
Currently some of the message types are defined as macros and
these macros can not be used directly in the post processing
cmm script. Enums are much more easy to process with the help
of the cmm script.
To address above issue below fixes are done with this change:
1. Assign enum name to pe message types, lim message types,
sme message type.
2. Change MLM message type from macros to enum type.
3. Change WMA message type from macros to enum type.
Change-Id: Ibd91a5371457a542cd141f680dda44a48b6f7d98
CRs-Fixed: 2719698
Currently pmo disable run time pm offload api gets the vdev
inside psoc obj lock but tries to take the reference of
vdev without any lock protection, in this case it is possible
that one thread gets the vdev and when it troes to get the vdev
reference some other thread deletes the vdev because if which
first thread will not be able to get the reference for the vdev
which it alreaady holds.
To address above issue use objmgr api to get the vdev.
Change-Id: I8f47515f39ace809cfe9e134fd704a2914ed3d9a
CRs-Fixed: 2769887
Roaming is handled by scheduler thread which has lower priority
than kworker thread. Periodic stats are printed in kworker thread.
Since handling roaming is a higher priority job, skip printing
periodic stats so that scheduler thread can be given extra time
slot to process roaming.
Change-Id: I444bdf1df51da2f80111fabd84d19584bd715ae3
CRs-Fixed: 2768360
In ht monitor mode, mcs data rate is not correctly populated in
radiotap header, so if ht_flag is set, assign mcs value to ht_mcs
to fix it.
Change-Id: If428275671068b31ae1367244c62bc4cac25a2af
CRs-Fixed: 2772405
If STA is on 5G channel, starting P2P GO on a different 5G DFS channel
should be rejected, but it's not, due to it didn't check the P2P GO
specific configurations, but only check the one for SAP.
To fix it, use P2P GO specific API to check the force scc status
for P2P GO mode.
CRs-Fixed: 2769182
Change-Id: Ibb3bb5e6e7f8a64e4483bdef863ce1f4294da9eb
If FW asserts before cfg80211 resume, cfg80211 resume will skip calling RTPM
put, which finally results a usage count mismatch. To fix it move RTPM put call
at the beginning of cfg80211 resume to make sure its always called and RTPM usage
count is in sync.
Change-Id: If0c9fbe094de16d103cd58ed4db3b08b76adb3cf
CRs-Fixed: 2728742
In wmi_fill_rso_start_scan_tlv(), the fixed param header is
overwritten with 0. So this causes roam scan mode command to
fail.
Don't overwrite scan start fixed param in
wmi_fill_rso_start_scan_tlv(). Also add some additional debugs.
Change-Id: I8ae7053e77d5694bade7e4a84fb4028d8224354c
CRs-Fixed: 2771951
Previous Logic:
Once a beacon report req is received, dut sta scans one channel
at a time & report immediately, then move to next channel.This
logic adds some additional delay as scan request and beacon
reporting will be done every channel.
New Logic:
Once a beacon report req is received, dut sta issue sta including
all the valid frequencies in the scan filter so that only single
scan req should be sent to FW.
After the scan is completed for all the channels, populate the
results so that it can be transmitted via beacon report.
Further, in sme_rrm_scan_request_callback, the logic to compute
valid_result was removed as even if RRM scan response is
received after roaming to different AP, the message shall be
posted to PE for rrm cleanup.
Change-Id: I48cb3106e35fb9a441a44a160a6ee6f75f64b81b
CRs-Fixed: 2770859
When NDI do hdd_ndp_peer_departed_handler() or hdd_stop_adapter(),
it will invoke hdd_cleanup_ndi() to pause NDI net_dev TX queue,
the NDI is in disconnection status, so only pause TX queue but not
set netif_carrier_off() will let kernel trigger TX watchdog
unexpectedly.
Use WLAN_STOP_ALL_NETIF_QUEUE_N_CARRIER instead of
WLAN_STOP_ALL_NETIF_QUEUE to set netif_carrier_off() then no
TX watchdog will be triggered.
Change-Id: Ic4a9954b383c34795bda70296f6af977f450bdfd
CRs-Fixed: 2765520
When __hdd_soc_remove is called from platform driver, for
removing the driver, request runtime sync resume before setting
unload_in_progress flag, such that runtime resume can happen.
Also, remove wlan_hdd_validate_context to skip unload_in_progress
flag check and have only SSR check during resume callback.
Change-Id: I545c6e10f9c18ff44c05a5d284aa9b82c7ec5ed5
CRs-Fixed: 2750981
3 ini:
roam_data_rssi_threshold_triggers
roam_data_rssi_threshold
rx_data_inactivity_time
If there's rx activity during latest rx_data_inactivity_time
and avg of data_rssi is better than roam_data_rssi_threshold, then
suppress roaming triggered by roam_data_rssi_threshold_triggers: low
RSSI or bg scan.
Change-Id: I5b41c4119e61392b50e52ab8ccb8650e5758f3b3
CRs-Fixed: 2768053
Don't send additional twt parameters in the vendor command if the
twt setup request failed in the firmware.
CRs-Fixed: 2767101
Change-Id: I318ecd9dfbaec85eec0c8dabbb640415da6631f1
sme_context structure uses union of TWT callback functions with
different signatures. This causes a cfi check failure. Remove the
union of callbacks and define them separately.
CRs-Fixed: 2763856
Change-Id: Ic40a572e363ea13f2defe29e25a16e15c5bff06e
In some case, the L2 header length is not exactly equal
to ETHERNET_HDR_LEN 14 bytes, actually it could be with
extra 4 bytes 802.1Q tag, so assume L2 header length just
14 bytes is not correctly in FISA aggregation.
Use L2 header length fetched from RX PKT TLV to handle FISA
correctly.
Change-Id: I254f5faa4548b74bf1a6d7a188c15b52b12711b8
CRs-Fixed: 2770284
Issue: Currently, host calculates he_caps based on assoc resp
he caps. In case assoc resp doesn't have he_caps host will
set peer mode vht and vdev mode he which may cause issue due
to different peer and vdev modes.
Fix: Consider beacon he params if he params not present in
assoc resp to keep vdev and he param same.
Change-Id: Id3df1eae85d30334d5d877c6ddd737989813f7c8
CRs-Fixed: 2769783
After the pre-CAC is done, SAP is switched to DFS channel. Post
this if a radar event is received, tx is blocked for the vdev
and channel switch to non-DFS channel is triggered. The
dfs_cac_block_tx flag is not reset on successful channel switch
to non-DFS channel causing packets received from network stack
to be dropped.
Fix is to reset dfs_cac_block_tx flag on receiving channel
switch response event.
Change-Id: I4e5fe0490d4c81b45c648a50c0b8508a7c11fa5a
CRs-Fixed: 2764008
Set default value of INI enable_subfee_vendor_vhtie to 1
to enable SU Bformee in vendor VHTIE by default.
Change-Id: I8a916495dd5c6ddfe78840dc6f35976fbdbbf8ba
CRs-Fixed: 2769257
1) In function hdd_process_genie(), there is a chance for
the 2 incoming parameters, encrypt_type and
mc_encrypt_type, not initialized due to an error
condition.
2) Remove some of the local variables that are not used
anymore in the following functions:
__wlan_hdd_cfg80211_del_station
hdd_features_init
hdd_cleanup_present_mode
hdd_update_regdb_offload_config
__wlan_hdd_cfg80211_scan
hdd_softap_stop_bss
Change-Id: If719b0fc4b09dc5fc88479a4a5ce327ebbc00168
CRs-Fixed: 2768860
Currently when next sta info get is done, the for loop updates
current sta info outside of the lock, which may lead to
undefined behavior.
To address above issue update the current stats info inside
the lock.
Change-Id: Idf33b9271379d34696f35c714bdf2d42446bd688
CRs-Fixed: 2755355
Variable roam_now in function csr_neighbor_roam_process_handoff_req()
is initialized as 0 and never be assigned a new value, so it will
always fall to csr_scan_for_ssid() when roaming happen with LFR2.0
enabled.
CERT case MBO-5.2.6 requires BTM reassociation happen within a short
time, otherwise AP will disassociate it and fails this case, it takes
more time if we do roaming scan after BTM response and roaming
candidate bss is ready.
When it is propagated from legacy branch, roam_now is a return value
from csrNeighborRoamProcessScanResults(), but after converged, this
function has no return value, and none zero roamable_ap_count can
indicate candidate ap is ready and we can roam now.
Change-Id: I5f2bd85abf0f7c1488ae729fc48332a92b4d133d
CRs-fixed: 2762476
This is a change for typo about LFR configuration. It uses ini -
"mawc_roam_ap_rssi_threshold", the correct is
"mawc_roam_rssi_high_adjust".
Change-Id: I7e29287b84559f58f13d191d6288534196b894da
CRs-Fixed: 2768752