In some cases, some auto powersave timers are never initialized. Change
sme_ps_timer_flush_sync to avoid checking the timer state of such
uninitialized timers.
Change-Id: I0bccca6835238d1d69c71f39fc0ae5a8eee56d23
CRs-Fixed: 2089350
The cfg80211 get_station callback is not intended for use with
non-station device types. However, it is useful to expose aggregate
statistics for non-station type devices. Add support for returning
aggregate statistics when get_station is used with a soft access point
device.
Change-Id: I8ae32c307f241525a7d74467328d9d40dc805053
CRs-Fixed: 2077011
qcacld-2.0 to qcacld-3.0 propagation
The variables used for cached ssid and authentication type will be cleared
after disconnection, hence user will get incorrect info from vendor
event after disconnection.
Use separate variables to save last ssid and auth info.
This is to fix issues of change I5b64d9942a54d35eac0f08b4d8fbed9d1d66a504.
Change-Id: Icc1a5d53e33d650726905e50e4846b77b10cf4ee
CRs-Fixed: 2098560
Even if channel is restricted to 20Mhz in a country code, the device
connect in 40-80Mhz.
Fix this by checking the max bandwidth supported by the country code
while calculating the CB mode.
Change-Id: Ibbf538309191b25fe944062ea618033c818095da
CRs-Fixed: 2095247
qcacld-2.0 to qcacld-3.0 propagation
Allow device switch to a different channel if the current channel is
congested, using the 11h channel switch announcement.
Change-Id: I1766785017e43f17cc800039b383ee5dabcd6ea5
CRs-Fixed: 2082632
Introduce lookup_threshold_5g_offset in WCNSS_qcom_cfg.ini
which will let the user to configure separate threshold for
5G band using this offset
Change-Id: I4975f74095a5fec0657666ba864ee436cbaed604
CRs-Fixed: 2093368
Add changes to fix compilation warning related to
frame-larger-than flag. Value of this flag is set by
CONFIG_FRAME_WARN in kernel config.
Change-Id: I0d4d55c141572c9da3a459e79073b99fc5d6ea67
CRs-Fixed: 2035710
WMI_CLEAR_LINK_STATS_CMDID can cause firmware crash if vdev_id is invalid.
Add staId, i.e. vdev_id checks to sme_ll_stats_clear_req() and
wma_process_ll_stats_clear_req().
CRs-Fixed: 2078391
Change-Id: Ic713b17aebeb89bc0ab69c2e4040d9018d3dc095
VHT RX LDPC capability depends on both INI config and HW capabilities.
Current logic does not populate HW capability in a correct way. HW RX
LDPC capability is set as a bitmask of bit 4 instead of boolean value
while INI config is value of 0 or 1. Bitwise AND with HW cap and INI
config always creates a result of 0, which leads to wrong RX LDPC field
in VHT caps IE.
Fix is to populate HW RX LDPC cap as a boolean value and advertise VHT
RX LDPC capability when both INI config and HW capability are set to 1.
Change-Id: Iabf83f74d9bfc2bf7d958ca3a08e9e6090ac7fb8
CRs-Fixed: 2060216
Remove the channel avoid event processing in wma as the
event processing handled by regulatory component
Change-Id: Ifa0e340c6341b21c192066c8c6eb14418b041062
CRs-Fixed: 2080241
As soon as EAPOL start happens, supplicant start authentication
timeout as 70 sec to complete authentication.
Driver should not issue disassoc before this time expires.
Fix this by increasing authentication timeout for EAPOL to 75 sec
CRs-Fixed: 2039542
Change-Id: Ib07cff669099563bc7ba87367cf88da5cc6d0fd2
To resolve one of IOT issues, introduce INI called
"disable_high_ht_mcs_2x2" which will disable high MCS indices for
2G STA case based on INI value.
Change-Id: I60c5edd89a42f74c0f439fe6a9ab0c75373622b2
CRs-Fixed: 2087438
qcacld-2.0 to qcacld-3.0 propagation
Add ini option to enable/disable action frame based channel switch.
Change-Id: I340464a18ef0b5cf09f481a23b01edcf04904e34
CRs-Fixed: 2082563
csr_roam_roaming_offload_timer_action() is used only when
WLAN_FEATURE_ROAM_OFFLOAD is enabled. But it is defined out of
WLAN_FEATURE_ROAM_OFFLOAD. So there is a compilation error that
csr_roam_roaming_offload_timer_action() is defined but not used when
WLAN_FEATURE_ROAM_OFFLOAD is disabled. Add fix to resolve this issue.
Change-Id: I31036a91df3d2799d53fb64f73dbae847bee97bf
CRs-Fixed: 2023165
Since wifi chip do not supprot LFR3.0 on SDX20, disable LFR3.0
feature in Kbuild, and fix a compilation error.
CRs-Fixed: 2009403
Change-Id: I16eb3bd68d5564801be9cbcf9db1386cb0e3953b
Check if wpa index for the OUI retrieval is
going beyond the limit of the array and return
Change-Id: I040246d7a7c2ca387282dc4d86ffdbdf34007323
CRs-Fixed: 2085702
Currently flush power save command logic is sending power save
enable for all VDEVs. FW does not support power save for SAP
VDEV hence add check to make sure to flush power save command
only for INFRA STA VDEV.
Change-Id: I8f162535f8a4c3b66b6ed136c3c0d599c7dc0dba
CRs-Fixed: 2084683
Currently there is no support to configure SMPS parameter
from host, add support to configure SMPS parameters using ini.
Change-Id: I6f8273ffed39a0b95c31f1647e86406b870165f2
CRs-Fixed: 2080571
logical not is only applied to the left hand side of this
bitwise operator [-Werror,-Wlogical-not-parentheses]
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^ ~
csr_api_roam.c:14617:6: note: add parentheses after the '!' to
evaluate the bitwise operator first
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^
( )
csr_api_roam.c:14617:6: note: add parentheses around left hand
side expression to silence this warning
(!(ies->RSN.RSN_Cap[0] >> 7) & 0x1)))
^
( )
Change-Id: I489eba6a6265778346bb3b20832f92774a2d5e0e
CRs-Fixed: 2087302
sme_acquire_global_lock was used in couple of places without proper
handling of releasing the acquired lock.
Fix the improper handling of lkSmeGlobalLock in multiple funcitons.
Change-Id: Ib6cd43fae3fe522fc6388815581389592d3e70f8
CRs-Fixed: 2086102
Replace sme_tspec_dir_type and sme_QosWmmDirType with sme_qos_wmm_dir_type
to avoid implicit conversion warnings/errors and to conform with linux coding
guidelines.
Change-Id: I1567ebbe7ec8adab3344d96f0d2aa93367975926
CRs-Fixed: 2071677
Structure sSirChanChangeResponse does not uses ePhyChanBondState
secondaryChannelOffset anymore. Remove the obsolete member variable
Change-Id: Ib244b6e5c1692ab928acc22e125d49779119e176
CRs-Fixed: 2071677
sme_config is used as local variables with struct tSmeConfigParams
in multiple places causing stack frame size to increase. This is
causing build issues with 32 bit systems where the stack frame
size is limited to 1024 bytes for each frame.
Move multiple sme_config local variables to dynamic allocations to
reduce stack frame size.
Change-Id: I86a93546adf40bbbc19438c3b1e3a7ec0d38f39f
CRs-Fixed: 2074224
When HandOff(HO) fails, set doNotSendOverTheAir flag so that LIM
does not send deauth and also does not send peer_flush_tids cmd
to FW as FW already did the cleanup.
Change-Id: I4721ad22e5c4229155ae9bd5f4d9624dca0a1879
CRs-Fixed: 2037621
Voice traffic is properly prioritized when a TSPEC is added to
the connection. When STA roams to a new AP, TSPEC is negotiated with
that AP, firmware is programmed to handle WMM access classes but
HDD is not notified of this change. This problem shows up only in
non-FT roaming. Ensure that AC flows are reinitialized after roaming.
CRs-Fixed: 2003210
Change-Id: I7b9e07cffa90eb966c4a23ff4c4db420fb0122fe
saved_scan_cmd has many fields that are allocated separately during
profile save operations. Add a routine to free those memory objects,
release the profile and avoid memory leaks.
CRs-Fixed: 2012430
Change-Id: I0d9fcb29ca7f8290692ba4b688ffe025d5b5d747
Split __wlan_hdd_cfg80211_set_ext_roam_params() into
multiple functions to improve readability of the code and
fix clang warning (-Wframe-larger-than).
Change-Id: I3ad995636127a5fda0635549551a24cc5b1bd2c5
CRs-Fixed: 2055487
Currently, auto powersave timers are deferrable. This means any pending
auto powersave timers will not fire while the device is supended, which
can have a negative impact on wlan power usage. Instead, flush any
pending auto powersave timers during the suspend process, to ensure
powersave is enabled while the device is suspended.
Change-Id: I5911ee30eaf770909b728af73958ba1bbaa8457f
CRs-Fixed: 2080812
In csr_validate_wep(), return value of csr_get_oui_index_from_cipher() is
used to fetch 'csr_wpa_oui' value. csr_get_oui_index_from_cipher() returns
0-14 but no.of rows of 'csr_wpa_oui' is 7.
Add changes to validate index value before accessing 'csr_wpa_oui' array.
Change-Id: I0cf16f4e8fb2c07a489991f20bc345e97b2450e0
CRs-Fixed: 2077599
Add support for rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.
On connection send OCE rssi reject BSSID list to firmware so that
firmware will avoid connecting to these BSSID until RSSI improve or
delta interval has elapsed.
Change-Id: I792b2874ed25227bf5fd09d8051549da96db4364
CRs-Fixed: 2070452
Add support to handle rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.
Change-Id: I6363bf5346ff8804611afbac3058819dc820092d
CRs-Fixed: 2070452
In packet logs currently HB failure, HO failure and No scan results
are marked as Non Fatal and because of that, these failures are not captured
in packet logs.
Fix this by making these events as FATAL.
Change-Id: I6db2f3cd843b7f84081332f2385fbfb0a2992078
CRs-Fixed: 2061842
sme_set_5g_band_pref is declared inside FEATURE_WLAN_ESE feature flag
by mistake which can cause a symbol undefined error if FEATURE_WLAN_ESE
is not declared.
Move sme_set_5g_band_pref outside of conditional block FEATURE_WLAN_ESE.
Change-Id: I80b045100b068d08873b136fdf676e99e36a57cd
CRs-Fixed: 2016629
Add support for 5Ghz network RSSI boost/penalty preference
based on ini values.
Change-Id: Ia3ae5dcc35b9a85fde5a609f8f27ff8b4bc35cec
CRs-fixed: 1085554
When Driver does disconnect as part of heartbeat failure
or kickout event, trigger fatal event to capture pktlog.
Change-Id: I43a486afeccc4acd4be542357b803d492afde9c0
CRs-Fixed: 2030718
Fix array out-of-bounds access while populating the BSS rate set.
The issue was seen while populating the basic supported rate
and extended rate sets.
CRs-Fixed: 2081423
Change-Id: I8626399b7f9a04dc368daa582b6a09500a7ea015
qcacld-2.0 to qcacld-3.0 propagation
Add eCSA capability record of STAs which associated to SAP.
Change-Id: I1d7892bb1dc4e490a587e8372a4bdc7f419e8b36
CRs-Fixed: 1094958
Information in struct ch_params_s are the same for 11g and
11n ht20, so phymode is still needed to distinguish them.
Change-Id: I5ddfc011b4fd3b11c975f8b2df3a270e8141e622
CRs-Fixed: 2073580
Currently both min and max rest time use the same ini param
gNeighborScanTimerPeriod.
Add a new ini param gRoamRestTimeMin for min rest time
during channel scan.
Change-Id: Ifbb0fcc736e81b292639c6f2ad3119b451bec4f2
CRs-Fixed: 2060095
qcacld-2.0 to qcacld-3.0 propagation
FW has limitation to support old WMI_REQUEST_STATS_CMDID and
WMI_UPDATE_STATS_EVENTID interface on AP vDev. FW suggest to use new
WMI_REQUEST_PEER_STATS_INFO_CMDID and WMI_PEER_STATS_INFO_EVENTID to
get tx/rx rate.
This checkin is about LIM/SME/SAP layer, provide SME APIs/callbacks
to HDD layer to get SAP's peer station tx/rx related information,
fill these information from wma layer get-peer-stat-info APIs and
peer station's association request frame. It also fixed function
csr_send_assoc_ind_to_upper_layer_cnf_msg when copy information
between different structures and using offset style.
Change-Id: Icb1aaa126663af7eaedd1c4db86ca25c40ce6ee9
CRs-Fixed: 2051628
In roaming scenario, to avoid ping pong with bad AP’s around, fw
blacklist certain Ap’s based on timestamps and penalize certain
AP’s of the same channel so they won’t be selected and back and
forth roaming could be avoided. This change adds the following
INI parametres to configure the parametres of this fw feature.
1) groam_disallow_duration - Amount of time LCA[Last Connected AP]
will be disallowed before it can be a
roaming candidate again.
2) grssi_channel_penalization - RSSI to be penalized if
candidate(s) are found in the same
channel as disallowed AP's.
3) groam_num_disallowed_aps - number of AP's the target should
maintain in its LCA list.
Change-Id: I41cb36caf1b42caeb2bf77846bd0279eb43d2018
CRs-Fixed: 2054188
Currently addts and delts commands are removed as part of
csr_roam_sync_callback. After successful roaming add_tspec of
old connection is not processed in SME (entry of addts command is NULL
in smeCmdActiveList). As there is no active add tspec in SME,
VO data is downgraded to BE.
To fix above issue, do not remove addts/delts commands from SME queue and
in PE layer do the error handling for addts to send resp for all
failure cases.
Change-Id: Ibc7364d188c3002dd8067738f6bcc8fee2af2126
CRs-Fixed: 2076713