Commit Graph

20391 Commits

Author SHA1 Message Date
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
Karthik Kantamneni
ee554d2e11 qcacld-3.0: Don't enable packet log in Monitor mode
Packet log and Monitor mode features cannot coexist, since both
share common ring resources concurrent access is not expected.
so don't enable packet log when device is in monitor mode.

Change-Id: Ibb3ed6dc36e5797c654c37fc567eb89bdaa1ea39
CRs-Fixed: 2745973
2020-08-11 11:52:36 -07:00
Abhishek Singh
409ca57191 qcacld-3.0: Fix peer leak for peer Connected to SAP during CAC wait
During SAP stop in CAC wait time, if peer are connected to SAP,
the peers are not deleted leading to peer leak.

Fix is to continue with disconnect in lim_process_mlm_disassoc_req_ntf
and lim_process_mlm_deauth_req_ntf as lim_send_deauth_mgmt_frame
and lim_send_disassoc_mgmt_frame already have code for not sending
deauth OTA during CAC time.

Change-Id: I33580f35cbe5bf9c0558fbd6138235a2a1edc645
CRs-Fixed: 2750966
2020-08-11 11:52:32 -07:00
snandini
f08b458cf3 Release 5.2.0.197T
Release 5.2.0.197T

Change-Id: If352f353a73f4b858adc8ea785c2116c016aa27c
CRs-Fixed: 774533
2020-08-11 09:47:52 -07:00
Liangwei Dong
f1b84514dc qcacld-3.0: Set dynamic chainmask before vdev start only
FW only needs chainmask configuration one time before vdev start.
If set chainmask configuration in restart, the side effect is
OMN action frame will be sent by FW before channel switch count is
changing to 1 or 0 in SAP interface. Data/Action frame OTA is not
allowed in this timeframe according to VHT-4.2.16h certification
test.
Fix by set chainmask only for vdev start.

Change-Id: I6c2e8da351b18b521db0a946bb7ea64ab071c314
CRs-Fixed: 2742126
2020-08-11 09:47:52 -07:00
snandini
221d895d6c Release 5.2.0.197S
Release 5.2.0.197S

Change-Id: Iaa32d04412dad7fc0a21286b8cabc1259cbc2bac
CRs-Fixed: 774533
2020-08-11 04:40:09 -07:00
Jianmin Zhu
44f9e3d938 qcacld-3.0: Fix out of buffer in rrm_process_beacon_req
Fix out of buffer in rrm_process_beacon_req.

Change-Id: Ib8a4de3587e2de62c17ab159c047c20e009c41b5
CRs-Fixed: 2751947
2020-08-11 04:40:09 -07:00
snandini
7f21000247 Release 5.2.0.197R
Release 5.2.0.197R

Change-Id: Id36b30c456f16debedcbe480ba964dd4dce94277
CRs-Fixed: 774533
2020-08-11 00:35:20 -07:00
Lin Bai
8a00b3fe63 qcacld-3.0: Avoid to use incorrect key length
Current parameter passed to lim_get_crypto_digest_len will be either
SHA386 or SHA256, won't return -EINVAL in any case.
For later considering, return 0 if parameter not the 2 crypto types.

Change-Id: I6cd7481a06106138df7ba18fbe9ed4eece246607
CRs-Fixed: 2751809
2020-08-11 00:35:20 -07:00
snandini
b71c7963a8 Release 5.2.0.197Q
Release 5.2.0.197Q

Change-Id: I948cbad569cfcaab60029a30b4bccbe5cb4aff7c
CRs-Fixed: 774533
2020-08-10 22:30:40 -07:00
wadesong
a9db8c7b0c qcacld-3.0: Fix compilation error for LFR2+BLM
With the newly introduced BLM enhancement, APs may get enlisted
and sent to FW for (re)assoc restraint. However, the FW side
AP restraint is only required when LFR3 is enabled.

With LFR2, no FW side AP (re)assoc restraint is required and all
actions will be done within driver code.

Use LFR3 specific conditional macro to enclose all the code
needed for sending reject AP list to FW.

Change-Id: I9a8bc0e25bc4b319bf1841324ef1b711f0659093
CRs-Fixed: 2751791
2020-08-10 22:30:40 -07:00
snandini
4cb64414e3 Release 5.2.0.197P
Release 5.2.0.197P

Change-Id: I2989c57d2e03b2d697b544113afc5285423e81ca
CRs-Fixed: 774533
2020-08-10 20:29:39 -07:00
Manjunathappa Prakash
dfed37f892 qcacld-3.0: Add config flag to deliver defrag frames
Add config flag to deliver defrag frames without REO reinjection.

Change-Id: If18adecc5b1f48c42ac116bc66dfa26eb73122ac
CRs-Fixed: 2745406
2020-08-10 20:29:39 -07:00
snandini
7f70008786 Release 5.2.0.197O
Release 5.2.0.197O

Change-Id: Iaa978afc9559d0d58d4a09148434b5676d53e52e
CRs-Fixed: 774533
2020-08-10 06:00:35 -07:00
Will Huang
73574ad2d8 qcacld-3.0: Define max number of keep alive pattern at one place
Currently there are 2 places where max number of keep live pattern
are defined:
1.  #define WMA_MAXNUM_PERIODIC_TX_PTRNS 6
And it can be configured by CONFIG_CFG_MAX_PERIODIC_TX_PTRNS.
2. #define MAXNUM_PERIODIC_TX_PTRNS 6
And it is hard coded value.

It is possible to have different values defined on some platform,
so we might give tgt_cfg->num_keep_alive_pattern value as 2,
but still allow more than 2 keep alive patterns adding to target,
where assert might happen.

Fix it by defining max number of keep alive pattern at one place.

Change-Id: I70ec3fa2e56a39cf8086750d966d95e41b2b75a7
CRs-Fixed: 2745443
2020-08-10 06:00:35 -07:00
snandini
0366e32999 Release 5.2.0.197N
Release 5.2.0.197N

Change-Id: Ie91974ec14ccaf8bf2e801df725cd2ba8317a3d4
CRs-Fixed: 774533
2020-08-10 00:03:00 -07:00
Liangwei Dong
e6a2f020ca qcacld-3.0: Fix P2P Client startup failure in STA+SAP
Update the STA+CLI+SAP cocurrency in 2x2 PCL tables according
to STA+GO+SAP concurrency PCL.

Change-Id: I292881f463613b5b38ccfff42bf1509396bdb472
CRs-Fixed: 2749425
2020-08-10 00:03:00 -07:00
snandini
1fa16507ed Release 5.2.0.197M
Release 5.2.0.197M

Change-Id: I3c21bd4d1e2756e180927fde662727c7f762ae8c
CRs-Fixed: 774533
2020-08-09 22:01:13 -07:00
Jingxiang Ge
c1ee492b7b qcacld-3.0: Trigger runtime resume before disconnection
In Case device is in suspending, if there is a disconnection,
disconneciton may fail as wmi cmd is not able to send to fw.

Add synchronization resume before disconnection as a protection.

Change-Id: I250d3a86183a61629e9369f49209c5a058a9a9a1
CRs-Fixed: 2746816
2020-08-09 22:01:13 -07:00
snandini
14c83ba01c Release 5.2.0.197L
Release 5.2.0.197L

Change-Id: I48142eae48ee109ef3ee1f872159b2d731d88d64
CRs-Fixed: 774533
2020-08-08 18:59:28 -07:00
Gururaj Pandurangi
33b02c097e qcacld-3.0: Support 5.9 ghz channels for US
Add support for new 5.9 ghz channels 169, 173
and 177 in hdd and sap modules

Change-Id: I630df032d93624db20aed9891ec53256fcfd55ab
CRs-Fixed: 2751051
2020-08-08 18:59:27 -07:00
snandini
169dbcedb5 Release 5.2.0.197K
Release 5.2.0.197K

Change-Id: I832312b1d8d91a5db82e1a61fe41287c18fe9fb3
CRs-Fixed: 774533
2020-08-07 15:01:57 -07:00
Pankaj Singh
db85c00306 qcacld-3.0: Extend Tdls external mode config support
Current implementation of external mode requires supplicant to
send tdls peer mac address. On matching of stats tdls implict
link procedure is triggered for configured peer.

Fix, to allow both configured peer and other peer that supports
tdls to establish the tdls link.

Change-Id: If7cb10986126db28979293653b1bc2a92c3f72eb
CRs-Fixed: 2750191
2020-08-07 15:01:57 -07:00