hdd_validate_adapter() function already takes care of logging
the caller function name in case of any error. Hence there is no need to
add the error log again.
Getting rid of these unnecessary logs reduces driver memory footprint.
Change-Id: I8e3b3c8c5c83c84c862c501b7c8650f55886bb7f
CRs-Fixed: 2770359
wlan_hdd_validate_vdev_id() function already takes care of logging
the caller function name in case of any error. Hence there is no need to
add the error log again.
Getting rid of these unnecessary logs reduces driver memory footprint.
Change-Id: Ic42aeacb4ed55cece038fe8cef8cde0df2ae6c4d
CRs-Fixed: 2769596
Rate limit NAN error log messages, to avoid flooding
the host log when NAN is not enabled
Change-Id: I091c9dff9115b77afa8c59e4d3fab748b30c0ee6
CRs-Fixed: 2777027
Currently qdf frag API's are not compiled, enabled those
API's compilation since they are used in DP TX frag path.
Change-Id: Iadd0710beb2220fb560b8873a3a8736b6a66b7ca
CRs-Fixed: 2777139
Currently, gRoamBeaconRssiWeight is not used in HOST or
FW.
Remove unused roam ini param gRoamBeaconRssiWeight.
Change-Id: Ida6ddb8ca5805f819c4d3f7e6ed96c705fa6594f
CRs-Fixed: 2767533
For the user power save enable/disable request, host doesn't send power
config to FW if STA is not in connected state. Host remembers users power
save config in MAC context's "usr_cfg_ps_enable" member. So use this
"usr_cfg_ps_enable" to send power save config to FW after STA associates
to AP.
Problem scenario:
1) User brings STA interface up and sends power save enable to host.
2) As kernel expects power save config command success even in the STA is
in disconnected state, host doesn't send power save config to FW and
returns success to kernel.
3) If user doesn't send power save enable command to host after STA
connects to AP. STA remains in full power mode.
Fix:
1) Use "usr_cfg_ps_enable" to send power save config to FW after STA
connects to AP.
Change-Id: I412567e2bb40a7b2d9566106e50a422f173a86d1
CRs-Fixed: 2767543
If FT roam with LFR2.0 enabled, pre-auth/reassociate happen in host,
PTK will be installed early after pre-auth negotiation, so need put it
after association complete, but currently we only save PTK key material
and don't install it.
Because crypto was converged and original eWNI_SME_FT_UPDATE_KEY has
been removed, move delayed installing key after association complete
notified at hdd layer, rather than in function wma_add_sta_req_sta_mode
at wma layer. And remove useless code related with original FT key
installing.
Change-Id: I3bc52b65d17342edab755f7904d743c3433f99ce
CRs-Fixed: 2768307
Currently driver does not update the rate flags correctly
in wma as rate flags should include all the subsets of the
lower rate sets, which is not the case today and driver only
updates the higher rate flag. Because of which it leads to
invalid computation of txrate at the kernel.
To address this issue, update the rate flags correctly in
wma.
Change-Id: I5529532b3d41b68693b5b4b8952ee0f1414354db
CRs-Fixed: 2776370
Pass rx data rssi triggers and rx time to firmware.
Add log in wmi to narrow down host and firmware issue.
Change-Id: I255e02ab8f2c88a29619a49d9c2055bdaa75642a
CRs-Fixed: 2768053
Host adds OMN IE in assoc request only if the AP advertises
OMN IE and host supports VHT. Adding OMN IE in assoc request
helps to overcome low throughput issue incase of IOT APs where
host supports VHT and 20MHz bandwidth only.
Hence add OMN IE in assoc request when host supports VHT and
20MHz bandwidth only.
Change-Id: I32294b0f10b6750147b835853cde34e384782db9
CRs-Fixed: 2768230
Issue: Currently, beacon presence validation is missing
and beacon->he_cap is validated which may cause null pointer
dereference in case he caps in assoc response and beacon both
are misssing.
Fix: Validate beacon piror to access of beacon->he_cap to avoid
null pointer dereference.
Change-Id: Ie8d41df3a9769897aba3c3c304ac2fa2abaf7950
CRs-Fixed: 2775366
When cfg80211_get_nud_stats is called post data stall
event only if NUD tracking is disabled in host driver.
When NUD failure is honoured in host driver post
data stall event before disconnection.
Change-Id: Ia366e539cb1674354e16c1086255804a244f34d6
CRs-Fixed: 2765557
In FTM mode do not register callback with IPA driver
to check if IPA is ready.
IPA offload is not supported in FTM mode.
Change-Id: I9d36f3085db72d3ffe9e6080f422618f7a531c01
CRs-Fixed: 2772192
There is customer requirement that once wifi chip overheat,
we should switch the tx chain mask to 1X1 to cool down the
chip instead of halting the tx completely.
Add new INI gThermalMgmtAction to configure thermal mgmt action
with default 0. The valid thermal mgmt action INI value is defined
as enum thermal_mgmt_action_code. To set it to 3 -
THERMAL_MGMT_ACTION_CHAINSCALING to meet customer requirement.
Change-Id: I88b1237fae1f476ad9ff0e7b5a469ec314a42bf9
CRs-Fixed: 2765289
Pointers returned by wlan_ipa_get_iface API and
cds_get_context API are not NULL validated at few
places. Add NULL checks for these pointers to avoid
possible NULL pointer dereference.
Change-Id: I44f226c2ce97afd6ad2ff9cde5cd70d9d12bc3d2
CRs-Fixed: 2775197
To do SMMU unmap for IPA TX and RX doorbell registers, provide
soc handle and pdev id to CDP layer.
Change-Id: I6e4fcc7d96d3dabe9dcbb85b9d7193e898d9a73e
CRs-Fixed: 2768306
FW triggers roaming based on the RSSI score of AP(s) available
after background scan. Currently, the host does not configure
the value of bg_rssi_threshold RSSI. This results in ping-pong
roaming after background scan, even though candidate AP
RSSI is not better than 5dbm than connected AP.
Fix is to configure the value of bg_rssi_threshold via new
INI "bg_rssi_threshold" and configuring default value of
INI as 5dB.
Min: 0
Max: 100
Default: 5
Change-Id: Ib710e294c8b33ff4903d41453e3b55f02daf53ae
CRs-Fixed: 2763962
SAE Public Key (SAE-PK) authentication is an extension of SAE. Host adds
support for SAE-PK APs roam score which host uses to select AP for initial
connection and roaming.
Change-Id: Id8c420950bb8c1d11db5a26aa860e280bcb672d1
CRs-Fixed: 2769372
The BTC_CHAIN_MODE command policy table is missing its declaration in the
.h file. Add the declaration to resolve the compilation issues.
Change-Id: I5bdd54dc9c3488054bafabd772f4f8b375fe50fa
CRs-Fixed: 2773241
In function hdd_process_genie(), pointers like encrypt_type
and mc_encrypt_type should be validated before getting
dereferenced.
Add pointer validation before every dereferencing takes place.
Change-Id: Ib894153ddac3e75fae5e0e7798b705ac5951ea17
CRs-Fixed: 2775378
If the IV value is zero then some IOT APs fail to decrypt WEP AUTH frame
hence host gets random value of IV using qdf_get_random_bytes().
Presently host checks if the IV is non-zero value in "seed" which is local
uninitialized variable, static analysis tool reports an error "seed array
elements are used uninitiated".
In order to address both these issues, generate the IV using
qdf_get_random_bytes() first and if it is zero, then repeat
invoking qdf_get_random_bytes() until it is non-zero.
Change-Id: Ib211e58ebe21d49ab1dc693ee8a6cad9bfd25ae8
CRs-Fixed: 2775943
Move the rssi change vdev params initialization to
csr_neighbor_roam_info_ctx_init() so that vdev priv object will
be created and per vdev parameters are saved and proper values
are sent to firmware.
Change-Id: I87c8272d89f431fa3db60beed4d1da6d9790ec28
CRs-Fixed: 2774826
- Use sme roaming api's instead of converged
roaming api's.
- Add debug logs in if mgr api's.
- Fix typo in Kbuild file.
- Fix compilation errors.
- Fix comments for readability.
- Update disconnect functions so parameter type matches.
Change-Id: Ia0adf6f79036e9348bf4ebb6237a5e25ef813a21
CRs-Fixed: 2774509
This change fixes two issues about TDLS:
1. It updates current mode only if tdls vdev object is NULL.
2. Handles pre-scan callback but ignore scan done callback if device
type isn't station or P2P client.
Change-Id: I4badbf3a7c40eca813a6360817d5483be88f2c5d
CRs-Fixed: 2769638
Validate TWT setup request type value obtained from
user space, before sending down to fw
Change-Id: I820f4912bafb84b76583ac9ed1cd88f59ea9fb3d
CRs-Fixed: 2770628
For lithium based target, rx pktlog depends on monitor status ring
and this ring is reaped by timer in host. if host try to disable
pktlog and high DL T-put traffic is ongoing in parallel, there is
no guarantee that HW stop to update PPDU status to monitor status
ring after host stopped reaping timer, unless host add some delay
between HTT ring reset msg and timer stopping, then FW will have
enough time to reset ring configuration.
Since FW side has disabled pktlog and looks pktlog is not necessary
for lithium based target, remove pktlog support by macro
FEATURE_PKTLOG, macro REMOVE_PKT_LOG is not preferred as it will
remove WDI_EVENT support that impact CFR feature.
Change-Id: I723f65ba3d2ffa58469b886e6795956f69d4e891
CRs-Fixed: 2763095
ini string value of RPS,rpsRxQueueCpuMapList is directly
pushed in hdd_context->config->cpu_map_list. Default value
is set as "e". During RPS enablement,
hdd_hex_string_to_u16_array converts this string into u16
array which is used for cpu mapping of RX queues for RPS.
Change-Id: I352bf7c5b16f61e17d918ceec53b0bcd47eecfba
CRs-Fixed: 2761785
Add checks in caller APIs to handle negative return value from
crypto get param and crypto get peer param APIs.
Change-Id: Ibb138971f347c7ccdacbc93aa38521d5d9536759
CRs-Fixed: 2775328
The csr_enable_twt() returns true when the fw is 802.11ax
capable. This lead to failure of UAPSD even though the twt
requested mode is disabled throgh ini.
Fix the logic in the csr_enable_twt() to enable UAPSD when
the twt requester mode is disabled.
Change-Id: I5338b95b66312337d6b8befe700f31f3e214b7b1
CRs-Fixed: 2765999
Add the API to validate the BSS before roaming to it. This API will check
if other vdevs are already connected to the BSS, if concurrency is allowed,
and if channel is allowed for the current HW mode.
Keep the new changes under the interface_mgr feature flag.
Change-Id: I280e95b0a30c08fe4037295330628b79d22acf5f
CRs-fixed: 2774543