Commit Graph

20413 Commits

Author SHA1 Message Date
Bapiraju Alla
7eea221bec qcacld-3.0: Trigger self recovery for vdev delete response timeout
When vdev response timeout happens from the firmware, vdev will
be logically deleted in the host and peer won't be deleted in
host and firmware. To catch these scenarios early on stages,
trigger self recovery when vdev delete response timeout happens.

Change-Id: I63d7b8aa315ba0b6a0e4bab60c2db535d99285ba
CRs-Fixed: 2754602
2020-08-14 08:12:45 -07:00
Liangwei Dong
f1bbb413e4 qcacld-3.0: Fix 160Mhz SAP channel switch failure
For channel switch event, the kernel expects the
center_freq1 contains the channel center frequency
of 160MHz. Use the the mhz_freq_seg1 of chan parameter
to fill the kernel struct.

Change-Id: I4ad7cb2a0a1f93f324b9afb63493888984006194
CRs-Fixed: 2744698
2020-08-14 08:12:41 -07:00
snandini
c3c572d172 Release 5.2.0.198I
Release 5.2.0.198I

Change-Id: Icdc1d65eb0a2794e5ab7a01f6a4f939fcb85f1c8
CRs-Fixed: 774533
2020-08-14 04:12:15 -07:00
hqu
75feb60ade qcacld-3.0: Move rso related process to connection manager [PART 6]
Add new code to implement below functions for connection manager
roam part:
And below two RSO command related process:
ROAM_SCAN_OFFLOAD_STOP
ROAM_SCAN_OFFLOAD_UPDATE_CFG

Change-Id: I378b969ddae77fff49ad1d4d8ce21764b292e5ac
CRs-Fixed: 2753011
2020-08-14 04:12:14 -07:00
Min Liu
f7d6bc2675 qcacld-3.0: Move get_peer_info into cp_stats component
Move WMI_REQUEST_PEER_STATS_INFO_CMDID related statistics into
cp_stats component.

Change-Id: I636221b0bc0e28180c97cd269440a7c733716a1d
CRs-Fixed: 2680618
2020-08-14 04:12:10 -07:00
snandini
2600ecf4bc Release 5.2.0.198H
Release 5.2.0.198H

Change-Id: Ifdb1f8be88dbeae7ac6024f20b7bc30e8c14c6d0
CRs-Fixed: 774533
2020-08-14 02:03:17 -07:00
Min Liu
dd14aa897d qcacld-3.0: Possible OOB read when parsing QoSMapSet IE
Fix possible OOB read when converting QoSMapSet IE into
some SME structure.

Change-Id: I723f54f313339a0063de3f1409f7de250ae159d5
CRs-Fixed: 2751833
2020-08-14 02:03:17 -07:00
Min Liu
10f8bfae30 qcacld-3.0: Possible OOB read/write in cds_hang_event_notifier_call
Fix the possible OOB read/write in cds_hang_event_notifier_call.

Change-Id: I43e7012d14825c89f6e022e8ffe19e57d606fe79
CRs-Fixed: 2751718
2020-08-14 02:03:14 -07:00
Arun Kumar Khandavalli
16d9ba73d0 qcacld-3.0: Correct the tlv length of the hangdata
The Tlv of the hang data is reduced to 2bytes from the 4bytes
change the structure definitions accordingly.

Change-Id: Ic535a7b985d028076d14afebe603dfa3fd8e94d3
CRs-Fixed: 2753804
2020-08-14 02:03:10 -07:00
nakul kachhwaha
580726ef14 qcacld-3.0: Initialize local variable before use
Un-initialized use of boolean variable 'is_host_pdev_id'
of struct pdev_params is causing wrong remapping of pdev_id
before passing it down to fw with WMI_PDEV_SET_PARAM_CMDID
resulting in unexpected behavior in fw.
Fixing this by initializing pdev_param, instance of struct
pdev_params to zero.

Change-Id: I2e6333c966d602cd4dcc72749dca23a48097028a
CRs-Fixed: 2747575
2020-08-14 02:03:06 -07:00
Arun Kumar Khandavalli
57f9f1d78c qcacld-3.0: Trim the hang data size as per requirement
Trim the hang data as per the customer data size requirement.

Change-Id: I5a5d848f820ddeaa721dba176e67dba97fed7a71
CRs-Fixed: 2751261
2020-08-14 02:03:03 -07:00
snandini
57e47e5c83 Release 5.2.0.198G
Release 5.2.0.198G

Change-Id: Ic29f00d57f90fca16ad60ef33d98c181f4b02510
CRs-Fixed: 774533
2020-08-13 17:12:35 -07:00
Kiran Kumar Lokere
b6f1e5565b qcacld-3.0: Fix Punctured preamble Rx HE capabilty setting
Update the Punctured Preamble Rx support only from 5G band device
capabilities.

Change-Id: I5bd357a66abb5429d8bf059660bd53864b4f1956
CRs-Fixed: 2749061
2020-08-13 17:12:35 -07:00
snandini
bde3ba778f Release 5.2.0.198F
Release 5.2.0.198F

Change-Id: Ic84225c975c2217fbb6b749349742bd10fc7041a
CRs-Fixed: 774533
2020-08-13 12:42:53 -07:00
Srikanth Marepalli
b3a17c8661 qcacld-3.0: Fix Mem leak during GTK/IGTK rekey in FT-SuiteB roam
In commit I5aa50145fcd3ba91b1c92d4817b7f0e4fc216e3f for FT-SuiteB
case Memory is allocated for GTK/IGTK in wlan_parse_ftie_sha384
while parsing the FTIE in Assoc/Reassoc response but it is not
freed properly.
This change does the respective mem free wherever required.

Change-Id: I59ccdd234efd2ee693b05426e62d3c2422fb5326
CRs-Fixed: 2747641
2020-08-13 12:42:53 -07:00
snandini
0099b427ea Release 5.2.0.198E
Release 5.2.0.198E

Change-Id: Ic4d377bfa65fb505cdecc531c6ecec15dbbbc1c5
CRs-Fixed: 774533
2020-08-13 10:32:51 -07:00
Bapiraju Alla
6db75ce3c9 qcacld-3.0: Purge shutdown notifier before modules close
Currently, shutdown notifiers are purged after closing WMA and
PE modules. If there is an SSR in between these modules close
and purging the shutdown notifiers, SSR sequence will try to
access the timers that are already freed in modules close.

To avoid this, purge shutdown notifiers before closing WMA and
PE modules.

Change-Id: I6a192b11d0f99c93c70bd244072bec353327d843
CRs-Fixed: 2745954
2020-08-13 10:32:51 -07:00
Pragaspathi Thilagaraj
f890d08086 qcacld-3.0: Replace FILS lim APIs with crypto APIs for rIK creation
Move the lim_default_hmac_sha256_kdf() & lim_create_fils_rik()
API to crypto component since both these API are primarily for
cryptographic derivation of re-authentication integrity key(rIK)

Use the new crypto APIs qdf_default_hmac_sha256_kdf(),
wlan_crypto_create_fils_rik() for this.

Change-Id: I22c20b13f46c13a34a2c4fd2ea7490f9a1441d21
CRs-Fixed: 2752632
2020-08-13 10:32:46 -07:00
Yu Tian
914dee63f1 qcacld-3.0: Fix static code analysis issues in DP
arg is reference before null check, move below

Change-Id: I5d815647b3968f93e2a86871711eb13f29cbd2f3
CRs-Fixed: 2752441
2020-08-13 10:32:42 -07:00
snandini
dfcf932953 Release 5.2.0.198D
Release 5.2.0.198D

Change-Id: Ibee9d51947638ff3e365aaabe5e2311d67c00d00
CRs-Fixed: 774533
2020-08-13 08:22:20 -07:00
Alan Chen
4b891d1d30 qcacld-3.0: Return -EAGAIN for idle shutdown if rmmod is in progress
If rmmod is in progress, return -EAGAIN for idle shutdown such that
cnss driver does not power off the soc and rmmod can succeed.

Change-Id: I91845da41bb666792a55aa3d446058025ce0fadb
CRs-Fixed: 2751194
2020-08-13 08:22:20 -07:00
snandini
649f778e0c Release 5.2.0.198C
Release 5.2.0.198C

Change-Id: I60fe269ebc2e0694c79eeec63ad82e1646fd5ca4
CRs-Fixed: 774533
2020-08-13 06:13:27 -07:00
Arun Kumar Khandavalli
3e966cc868 qcacld-3.0: Disable the scheduler thread in the init error path
During the module initialization the scheduler thread and the
init thread run in parallel if there is a failure in the error
path, the scheduler thread is not aware and still sending
the messages to firmware resulting in system instability.

Disable the scheduler as soon as there is an error in the init path.

Change-Id: I50546a84cbfed86a0bdd6e4e38ede411f4e924d2
CRs-Fixed: 2742025
2020-08-13 06:13:27 -07:00
Vevek Venkatesan
fedc5e32b8 qcacld-3.0: fix IPA stats set_quota failure
Fixing the failure of set_quota feature for IPA stats,
currently calling set_quota during resource_loading, but
it is supposed to be called if resource_loading is false.
This is causing IPA stats set_quota feature is getting
failed for Adrestea targets and fixing the same.

Change-Id: I95ad60a8e15f4faaea34093785422ad494ee1fb4
CRs-Fixed: 2730655
2020-08-13 06:13:23 -07:00
Alan Chen
38888ae732 qcacld-3.0: Add a sysfs replacement for dl_mode commands
As part of WEXT replacement, replace dl_loglevel, dl_mod_loglevel,
dl_modoff, dl_modon, dl_report, dl_type, dl_vapoff, dl_vapon with
a sysfs file.

file path: /sys/class/net/wlanxx/dl_loglevel
file path: /sys/class/net/wlanxx/dl_mod_loglevel
file path: /sys/class/net/wlanxx/dl_modoff
file path: /sys/class/net/wlanxx/dl_modon
file path: /sys/class/net/wlanxx/dl_report
file path: /sys/class/net/wlanxx/dl_type
file path: /sys/class/net/wlanxx/dl_vapoff
file path: /sys/class/net/wlanxx/dl_vapon
        wlanxx is adapter name

example: echo 1 > dl_loglevel
example: echo 1 > dl_mod_loglevel
example: echo 1 > dl_modoff
example: echo 1 > dl_modon
example: echo 1 > dl_report
example: echo 1 > dl_type
example: echo 1 > dl_vapoff
example: echo 1 > dl_vapon

Change-Id: Ic3d748738d0072e42b7ff07177f2ca711b333193
CRs-Fixed: 2715053
2020-08-13 06:13:20 -07:00
snandini
c2cd3e4b2e Release 5.2.0.198B
Release 5.2.0.198B

Change-Id: I315c02ff40ca041ee2d8cc60f686467842c4e288
CRs-Fixed: 774533
2020-08-13 02:09:57 -07:00
Visweswara Tanuku
78df7f106e qcacld-3.0: Extract Peer TWT session parameters
WMI handler is registered for twt_session_stats event.
Upon wmi event twt session parameters are extracted and
cached in peer mc_cp_stats. UMAC APIs are provided to
retrieve TWT session parameters from north bound
interface(hdd) using twt peer's mac_addr/session dialog_id

CRs-Fixed: 2730732
Change-Id: I8ce38ac6be97e844e26e03751c6d6cca981b82b4
2020-08-13 02:09:56 -07:00
Visweswara Tanuku
6363f77af4 qcacld-3.0: Set twt ap sta count in target config
Provide defines in Kbuild to set twt ap sta count
in target config

Change-Id: Ie7be53d2cb003c1176b6dec26d22f833288308c0
CRs-Fixed: 2730789
2020-08-13 02:09:53 -07:00
Subrat Dash
307e0288a6 qcacld-3.0: Fix tsf cap failure when SAP starts on DFS channel
When DFS channel is used WMI_VDEV_TSF_TSTAMP_ACTION_CMDID is
sent to fw before vdev is in up state. It leads the tsf capture
to enter into HDD_TS_STATUS_WAITING state as the fw returns
invalid tsf in the TSF report event.

The tsf capture has to be restarted to recover from this state.

Fix this by Calling hdd_stop_tsf_sync() while entering into CAC, 
the subsequent call to hdd_start_tsf_sync() will restart the tsf
capture.

CRs-Fixed: 2750676
Change-Id: Ie2fdf719d4b57035bf6fcc11824a894a1e313e23
2020-08-13 02:09:49 -07:00
snandini
c08f05829c Release 5.2.0.198A
Release 5.2.0.198A

Change-Id: I8849da364c4edce44427214ced9787ca7fe329dc
CRs-Fixed: 774533
2020-08-13 00:03:53 -07:00
Amruta Kulkarni
f2b948bccf qcacld-3.0: Use freq instead of channel num to get channel state
As the channel numbers are no longer unique use
wlan_reg_get_channel_state_for_freq() to get the
channel state and populate the valid channel list.

Change-Id: I182cea44c234cd0da2010f7b2c807b70c51cce85
CRs-Fixed: 2747949
2020-08-13 00:03:53 -07:00
Alan Chen
07c1ffca68 qcacld-3.0: Add an ini item for stats over QMI
Currently, stats over QMI features can only be disabled over build flags,
which is not flexible. Hence, add a CFG ini item to enable/disable stats
over QMI.

Change-Id: Idb27b712f8a831059dd6d6d12350533361d4d693
CRs-Fixed: 2752316
2020-08-13 00:03:49 -07:00
snandini
2f88a74356 Release 5.2.0.198
Release 5.2.0.198

Change-Id: Iabeaef8ebee98840adfb977d7fd006744cd484d9
CRs-Fixed: 774533
2020-08-12 19:53:07 -07:00
Yu Wang
499e2ccc29 qcacld-3.0: fix code defects for RRM frame processing
Directly dereferencing pointer beacon_xmit_ind before
null-checking, which may result in null pointer issue.
Meanwhile, measurement_idx should be checked to avoid
out-of-bounds read.
Fix is to check before dereferencing it.

CRs-Fixed: 2751550
Change-Id: I5241b3b16fcd9a04da121fd938b27d4070ea4e06
2020-08-12 19:53:06 -07:00
snandini
014e2991c8 Release 5.2.0.197Z
Release 5.2.0.197Z

Change-Id: Ibdc529e8ae95bb852279de329bf70957fe0423e0
CRs-Fixed: 774533
2020-08-12 17:47:56 -07:00
Yu Wang
240d3c040f qcacld-3.0: fix an out-of-bounds read issue
Size of rsn_caps/mlme_ht_capabilities_info/mlme_ht_ext_cap_info are 16bit,
mlme_ht_param_info is 8bit, it casts the pointer type to (uint32_t *) to
get a 32bit value, which results in out-of-bounds read.
The fix is to cast according to the size of the original type.

CRs-Fixed: 2752734
Change-Id: I20131b8539157f30471723d7211fbf8b209c494f
2020-08-12 17:47:56 -07:00
Abdul Muqtadeer Ahmed
82dd7dea79 qcacld-3.0: Add a check for WLM latency manager support
Currently there is no check for WLM latency manager support,
while setting the latency level which may lead to undefined behavior.

To address the above issue add a check for WLM latency manager support.

Change-Id: I03aebc1a87a5a40265eea1189503d73f35472644
CRs-Fixed: 2746738
2020-08-12 17:47:52 -07:00
snandini
40edd826f0 Release 5.2.0.197Y
Release 5.2.0.197Y

Change-Id: Idf99b382df3b866dee5464312c0bf75ad81d285c
CRs-Fixed: 774533
2020-08-12 13:56:26 -07:00
Amruta Kulkarni
1e49d2c36e qcacld-3.0: Prevent link down for SAP on DFS channel
For SAP on DFS channel, the PCIe link down should be prevented
so that HalPhy can access DDR memory to report Radar found event.

Change-Id: Ia256d5df4d59071830d09c3f4821d73196327128
CRs-Fixed: 2740443
2020-08-12 13:56:26 -07:00
snandini
284d051619 Release 5.2.0.197X
Release 5.2.0.197X

Change-Id: I319b97ab7ac053a2f11faeff809cedd0a28116c6
CRs-Fixed: 774533
2020-08-12 06:42:05 -07:00
Pragaspathi Thilagaraj
5907f277d9 qcacld-3.0: Include the current RSSI in ROAM_TRIGGER print
In roam trigger print the driver doesn't include the current
RSSI threshold info.

Add the current rssi threshold value at which roaming was
triggerd in roam trigger logging.
Also refine the candidate AP blacklisting related prints.

Change-Id: I6d39851278081a728b74e036c22e8d302d7b7b4c
CRs-Fixed: 2752998
2020-08-12 06:42:05 -07:00
snandini
426cf8cc4c Release 5.2.0.197W
Release 5.2.0.197W

Change-Id: I213a7ecbfc74bde3040123a4c686a1080f63b715
CRs-Fixed: 774533
2020-08-12 04:33:43 -07:00
Yu Wang
4fc72d4273 qcacld-3.0: fix code defects for spectral callback registering
Declaring variable spectral_cb without initializer in
sme_register_spectral_cb, spectral_cb.vdev_get_chan_freq_seq2
will be used uninitialized.
To fix it, initialize spectral_cb when declaring.

CRs-Fixed: 2751599
Change-Id: I2c5cd5a85b54dcbda3059bfd528cd18626b6b316
2020-08-12 04:33:43 -07:00
Kiran Kumar Lokere
421d06551f qcacld-3.0: Add NULL check for profile in roam sync
Add NULL check for roam profile in csr roam sync callback as the
the session current profile can be freed in disconnect process.

Change-Id: Ia127cb9fb7a6185c0a57a2c28d72fb234087c7c8
CRs-Fixed: 2739817
2020-08-12 04:33:39 -07:00
Rajeev Kumar
5273643587 qcacld-3.0: Change host wake up log to info log level
There is no info level log in wow disable path and hence
in absence of driver logs its difficult to notice wow
disable. Change host wake up log to info log level to
assist in debugging when driver log is not available.

Change-Id: If8a4dfae7f30413a7acbd03374340a76c9d4923b
CRs-Fixed: 2753189
2020-08-12 04:33:36 -07:00
Chaoli Zhou
7786bdec47 qcacld-3.0: Enable MULTI_IF_NAME for dual driver case
Update MULTI_IF_NAME while DYNAMIC_SINGLE_CHIP is not
"wlan" to support dual wlanhost driver load case

Change-Id: Id7c4e7b6e8c14fe0ba64b3187ec46f7b248058cb
2020-08-12 04:33:32 -07:00
snandini
5996960692 Release 5.2.0.197V
Release 5.2.0.197V

Change-Id: Ib77c8f7a2101c3d80f3e8432d384ab1819ff0430
CRs-Fixed: 774533
2020-08-11 14:08:48 -07:00
Pragaspathi Thilagaraj
39f2441cfa qcacld-3.0: Reset hdd_reassoc_scenario flag on disconnection
After successful roam synch indication received in 802.1x/WPA3
security roaming, the peer will not be in authorized state since
EAP/EAPOL handshake is handled at the supplicant. Simultaneously
there is continuous vdev pause/unpause events from firmware, so
EAP handshake fails and EAP timeout kicks-in at supplicant and
disconnect is triggered. But on new connection the
hdd_reassoc_scenario flag is not reset, so
__wlan_hdd_cfg80211_ll_stats_get always returns failure and the
framework displays low rssi even though the connected AP rssi
is good.

Reset the hdd_reassoc_scenario flag after any disconnection.

Change-Id: I7b00fef86fa37d6e7ab857be1750add142f7e647
CRs-Fixed: 2752022
2020-08-11 14:08:48 -07:00
snandini
d0593085f9 Release 5.2.0.197U
Release 5.2.0.197U

Change-Id: Ifa2b018841b19a1036fd323ca97d8eed3f628a9d
CRs-Fixed: 774533
2020-08-11 11:52:40 -07:00
Kiran Kumar Lokere
09d979b3d1 qcacld-3.0: Use ROAM_11KV_CTRL cmd to enable/disable FW roaming
Use ROAM_11KV_CTRL WMI vdev command to enable/disable the roaming
functionality in FW.

Change-Id: If3bb344ec7058d4149d0064975d7c91f213fd105
CRs-Fixed: 2727671
2020-08-11 11:52:40 -07:00