Currently the size of array ch_list in sme_set_plm_request is
defined as WNI_CFG_VALID_CHANNEL_LIST and this is incorrect.
This is just an index to the corresponding CFG item. Fix the
size to WNI_CFG_VALID_CHANNEL_LIST_LEN which is the maximum
size that can be passed from the source buffer.
Change-Id: I90086f2c73ee09cfc9d63a327b464f4017f5b37f
CRs-Fixed: 2120725
Currently host take min of VHTCaps.csnofBeamformerAntSup and self
txBFCsnValue rather than sending self CSN cap. However doing so
have certain IOT issue with commercial APs already in market. This
IOT issue is found only in our 2x4 solution. Fix this by min only
if self CSN is < 4.
Change-Id: I819fcc440ef3a74ae0dc9011465d0a5d1f2c5892
CRs-Fixed: 2121133
Implementation to change BmissFinalBcnt dynamically.
User can set totalBcnt using the new command
QCA_WLAN_VENDOR_ATTR_CONFIG_TOTAL_BMISS_CNT.
BmissFirstBcnt will retain its default value or from ini.
BmissFinalBcnt will be configured as (totalBcnt - BmissFirstBcnt).
Change-Id: Ie3c3895d48248d349400e755f07edc807e335b44
CRs-Fixed: 2081906
During host invoked roaming, set WMI_ROAM_INVOKE_FLAG_NO_NULL_FRAME_TO_AP
flag so that FW will not send NULL data frame while doing transition to
same bssid.
CRs-Fixed: 2046964
Change-Id: I043c3d2431e4da5af36fb710bd36a520550abbd3
Presently, host driver is sending the exit power save
configuration request to firmware when an interface up comes
before iface_change_timer which is not required because firmware
is the master and decides to enter/exit imps.
To mitigate the issue, don't send the exit IMPS request to firmware
before interface change timer expires and re-configure the same
incase of loadonce-unload never in case of firmware is de-initialzied.
Change-Id: Ia47687cdcfc5a5fb7be1a8066e163c3248305bba
CRs-Fixed: 2002110
Best candidate at first connection is a mechanism
to select best possible candidate for making Wi-Fi
connection based on the scan results provided.
Driver use Scan results to calculate score for each
BSS and select the best candidate to connect.
This enhances the user experience by connection
to better AP, based on certain parameters.
Change-Id: I3f88fa8c67f4cf830f05faf2c1d3f3491eee9a72
CRs-Fixed: 2018585
Change-id Iafd5666179d079c7bcc950277092cef3046356bf was added to remove
antenna sharing support from SAP and STA case but customer needs those
changes for SAP case only.
So bringing back changes for STA case.
CRs-Fixed: 2117829
Change-Id: I79f7c5ae1fd642f0b26170f066a5409638cdd873
While DUT is in SAP or GO mode, due to LTE antenna sharing mechanism,
DUT is associating in 2x1 chains to HT clients.
As per new requirement, remove dependency of number of chains on antenna
sharing. If HT client supports 2 chains, and due to DBS/LTE antenna
sharing SAP/GO drops down a chain then rate adaptation at peer takes
care of dropping down chains at peer side
Change-Id: Iafd5666179d079c7bcc950277092cef3046356bf
CRs-Fixed: 2108484
Current structure is expected to be 4 bytes align which needs to be
fixed by moving chan_switch_hostapd_rate_enabled field up in the
structure.
Change-Id: I234142a135fdeac69601d352beed7eda8ec16b99
CRs-fixed: 2118364
Clear up tdls legacy init/deini, helper functions and structures.
Also remove legacy code in vendor nl80211 and iwpriv commands.
Change-Id: I983851d8cc0d3605c3d6bd0d8975c72844f71740
CRs-Fixed: 2105075
Clear up the tdls legacy functions which handle add/delete
tdls peer, tdls mgmt frame process and tdls_oper callback.
Change-Id: I8ba344ce5593df44bd15527e2ff68e872b6d23b8
CRs-Fixed: 2105075
Currently HDD passes the CDS context to sme_get_rssi(), which in turn
passes it to csr_get_rssi(), which in turn uses it to populate the
p_cds_context field in the tAniGetRssiReq message. Upon processing of
this message by csr_update_rssi() the p_cds_context is checked for
NULL but is otherwise unused. Since the CDS context is not needed,
remove it from all of the RSSI APIs.
Change-Id: I5836e3192205576f6ff4614a29356e73fe674848
CRs-Fixed: 2116954
Currently sme_enable_uapsd_for_ac() & sme_disable_uapsd_for_ac() take
a cds_ctx parameter. This parameter is no longer used, so remove it.
Change-Id: I36e57975bcfeded648513dce79f32a2fd8f56f5a
CRs-Fixed: 2115518
Change "qcacld-3.0: Remove obsolete sme_roam_update_apwpsie()"
removed the only caller of csr_roam_update_apwpsie(). Since this
function is unused and obsolete, remove it.
Change-Id: I5a32572d79bccd2c9267e4ffdb0ac7ad9a68d26d
CRs-Fixed: 2115347
Change "qcacld-3.0: Remove wlansap_*_wps_ie()" removed the last
caller of sme_roam_update_apwpsie(). Since this function is unused
and obsolete, remove it.
Change-Id: I71ec6d5dd22d427507658cf26582e69bd0751d7f
CRs-Fixed: 2115346
Change "qcacld-3.0: Remove obsolete sme_roam_tkip_counter_measures()"
removed the only caller of csr_roam_issue_tkip_counter_measures().
Since this function is unused and obsolete, remove it and the
supporting function csr_send_mb_tkip_counter_measures_req_msg().
Change-Id: Id681afc7448ea9fc2ba5ef89ed88672211106e84
CRs-Fixed: 2115344
Change "qcacld-3.0: Remove obsolete wlansap_set_counter_measure()"
removed the last caller of sme_roam_tkip_counter_measures. Since this
function is unused and obsolete, remove it.
Change-Id: Id7d48fc6946a15ddf1157417d00833a7976b5793
CRs-Fixed: 2115343
Change "qcacld-3.0: Remove obsolete sme_roam_update_apwparsni_es()"
removed the only caller of csr_roam_update_wparsni_es(). Since this
function is unused and obsolete, remove it.
Change-Id: I4e89efe38776eb74c702485020236cfaee50641f
CRs-Fixed: 2114958
Change "qcacld-3.0: Remove obsolete wlansap_set_wparsn_ies()" removed
the last caller of sme_roam_update_apwparsni_es(). Since this function
is unused and obsolete, remove it.
Change-Id: I36d03fc0a8ad24c0b0a2699c008baf83f474a217
CRs-Fixed: 2114957
Current method for calculating LISTEN INTERVAL are static
configuration a.ka. ini based. Now OEM / USER want to take
control of setting LISTEN INTERVAL as per their applications
need. Once if USER configure the LISTEN INTERVAL value using
vendor command then host should avoid changing the LI value
during each suspend/resume. User LI value will be override
configuration. Once USER will Disable the LI using vendor
command then host can fallback to current default method.
Change-Id: Ia9b412b073c059df0cdff7bcda8198f7581e796d
CRs-Fixed: 2040298
In function csr_get_dot11_mode, CSR_GET_SESSION may return NULL if
session_id is an invalid value, check it before use this pointer.
Change-Id: I7c29ca455add9f0a8b19a6ca98e1f2bb319a1c9d
CRs-Fixed: 2071449
Roam sync indication checks for csr roam state to determine if user
disconnect is not in progress. But there can be a race condition
where the csr roam state is not updated by disconnect and while
roam sync check the state and proceed.
To fix this set the disconnect in progress flag in sme session
as soon as disconnect starts in HDD and use that to determine if user
disconnect is not in progress when roam sync is received.
Change-Id: Icf541b698eb194621d19b03f281ec3dfd552e373
CRs-Fixed: 2112912
Add support for handling vendor sub command
QCA_NL80211_VENDOR_SUBCMD_ACTIVE_TOS and parsing its attributes.
CRs-Fixed: 2069865
Change-Id: I38f761f20007a04063b0e0680793aedcabd02c6a
When no channel is selected from ACS and fallback channel
is invalid, a default channel is selected but the channel
width remains invalid due to which ASSERT is happening.
Whenever default channel is selected, select default channel
width of 20 MHz as well.
Change-Id: I885e01d1324484b84e04675238d2e1f8cd10e30c
CRS-Fixed: 2112806
In a noisy enviornment assoc indication in SME queueu
is not getting processed due to multiple beacons/probes
getting processed in PE queue which is high priority
than SME queue.
Instead of posting a message to SME queue, assoc indication
will run to completion using sme callback mechanism.
Change-Id: I4dc7e3ef0c91964ebc842afa38b7815464e0e406
CRs-Fixed: 2114425
Power save checks for user configuration and STA connection state,
if either of these fails then do not restart the auto power save
timer.
Change-Id: I83a337b828677464c74800adf690c00fda68fadc
CRs-Fixed: 2112585
Add a new dumpStats parameter (25) to dump disconnect stats.
The following command will dump disconnect Stats into QXDM.
>iwpriv wlan0 dumpStats 25
Change-Id: I0908c947b5c829f51b087871ad11d5674908dca2
CRs-Fixed: 2058958
Add new WCNSS_qcom_cfg.ini item to configure offset from bad RSSI
threshold ini for 2G to 5G band roam. This offset is used to
calculate the RSSI to be used as trigger for device to roam from
2G to 5G band when it is connected to a bad RSSI 2G AP and a 5G AP
is available in the environment.
New ini added : roam_bad_rssi_thresh_offset_2g
Change-Id: If2285317d1d01bb2faae2cf1928ad7adae8204d4
CRs-Fixed: 2105894
Fix the regression issue introduced by change
"Change-Id: Ica336398865a8b5e16297e4555dbb7de5e79567e".
The issue is that it will always include driver default rates.
In some case it only needs to calculate supported rates from hostapd.conf
file. Define ini item gChanSwitchHostapdRateEnabled to configure supported
rates calculated from hostapd.conf file or driver default rates when doing
SAP channel switch.
Change-Id: I45eeea5134dd80929bdd1f61246bdc66e1857e22
CRs-fixed: 2103714
Add data structures to save beacon tx rate.
The beacon data rate is multiples of 100 Kbps.
Firmware expects the data rate in the form of hw rate codes.
So convert the data rates to hw rate code.
And send it to firmware.
Change-Id: Ia39fd4c14defa729f75f2c45748fe5b04b909647
CRs-Fixed: 2099052
csr_roam_stats_rsp_processor() calls cds_get_global_context() but then
doesn't do anything with the result, so remove the unnecessary call.
Change-Id: Ic47dbf971d1eaea4c7c33ff62f9bfb848d9d654b
CRs-Fixed: 2109956
Introduce the below WCNSS_qcom_cfg.ini items to configure
for bad RSSI roaming. These parameters would be used when
the device is connected to an AP with weak signal and has
to roam to a better AP if it is stationary but has found
some other better AP in the vicinity
roam_bg_scan_bad_rssi_thresh:
If the DUT is connected to an AP with weak signal, then the bad RSSI
threshold will be used as an opportunity to use the scan results
from other scan clients and try to roam if there is a better AP
available in the environment.
roam_bg_scan_client_bitmap:
This bitmap is used to define the client scans that need to be used
by the roaming module to perform a background roaming.
Change-Id: I3b9f737ea389d35f8be173ce83b2237c2375fb88
CRs-Fixed: 2082904
Join failure timeout value is set to 10 times beacon
interval. If 10 times beacon interval is greater than
max join failure timeout value, global join failure
timeout cfg value is not set which results in connection
failure.
Set join failure timeout value in bss config to the
default join failure timeout value if 10 times beacon
value exceeds default value.
Change-Id: I835256ba07a714cb0606c6e90964475fc112c4b4
CRs-Fixed: 2100633
Introduce the following items in WCNSS_qcom_cfg.ini for
user to modify them for MAWC based roaming.
mawc_roam_enabled
mawc_roam_traffic_threshold
mawc_roam_ap_rssi_threshold
mawc_roam_rssi_high_adjust
mawc_roam_rssi_low_adjust
Change-Id: Ief51e3e91603bfd7f6c6deed3ca48bc717b2b6fb
CRs-Fixed: 2081413
Currently struct sAniGetTsmStatsReq contains a p_cds_context field,
but this field is unused. Remove the field along with all of the code
that is present to populate it.
Change-Id: I1335034b959b77223834d7cf77e33c1f9bd1b358
CRs-Fixed: 2109433
Currently sme_set_idle_powersave_config() takes a cds_ctx
parameter. At one time this was needed for the call to
cds_get_context(), but that is no longer the case, so remove this
unused parameter.
Change-Id: Iacef39eded8d87a22a30fe62b0305f93e604dc4c
CRs-Fixed: 2109431