Граф коммитов

21839 Коммитов

Автор SHA1 Сообщение Дата
Ashish Kumar Dhanotiya
d1c0c54b5f qcacld-3.0: Add hdd api to check different vdev states
Currently there are no hdd apis to check different
vdev states.
Add hdd apis to check if vdev is connecting to some ap
or disconnecting or vdev is in disconnected state with
the help of connection manager api for the same purpose.

Change-Id: I3b653fa1090a0e701f235520fa4e1028bac6ad7d
CRs-Fixed: 2853413
2021-01-15 12:31:49 -08:00
Ashish Kumar Dhanotiya
df52b010d4 qcacld-3.0: Validate FW provided mac address
Currently host driver does not validate the mac address which
it receives from FW and based on this mac address host derives
remaining mac addresses. If mac address from FW is multicast
or broadcast address then it will be treated as invalid mac
address and adapter creation will fail.

To address above issue, accept mac address provided by FW only
if it is a valid mac address else derive all the mac address
based on driver's internal logic.

Change-Id: I4c4b60cac082680df90016ec4ba63f744353771c
CRs-Fixed: 2853417
2021-01-15 12:31:44 -08:00
snandini
9c4a45c4a8 Release 5.2.0.218H
Release 5.2.0.218H

Change-Id: I4f68617baaa9533947c5e9e0b1827fc2d0de6933
CRs-Fixed: 774533
2021-01-15 10:25:32 -08:00
Pragaspathi Thilagaraj
1a9311161a qcacld-3.0: Create TWT context in peer private object
Create TWT context in peer object to store the TWT session
related parameters. Introduce mlme api to get/set various
twt session parameters for the peer.
Block the below commands till TWT setup is complete.
TWT GET
TWT Pause
TWT resume
TWT terminate

Add new files for TWT specific functionality in MLME component:
components/mlme/core/inc/wlan_mlme_twt_api.h
components/mlme/dispatcher/inc/wlan_mlme_twt_public_struct.h
components/mlme/dispatcher/inc/wlan_mlme_twt_ucfg_api.h
components/mlme/core/src/wlan_mlme_twt_api.c
components/mlme/dispatcher/src/wlan_mlme_twt_ucfg_api.c

Also return error to userspace if back to back TWT setup
command is received before TWT setup response is received from
firmware or already TWT setup is complete for given dialog id

Change-Id: I61e24dd41dc9dcb78fdfe33ef8fa0ecb374a4a72
CRs-Fixed: 2847213
2021-01-15 10:25:32 -08:00
snandini
1291654f4c Release 5.2.0.218G
Release 5.2.0.218G

Change-Id: Idb20cddddea50c65459e2f970980a2e9ddcd9696
CRs-Fixed: 774533
2021-01-15 04:06:46 -08:00
Will Huang
19be165cba qcacld-3.0: Remove QDF_BUG of qdf_spin_is_locked
spin_is_locked() provided by kernel has statement that we should not
rely heavily on the return value, it only tells that the spinlock is
seen to be locked, not that it is locked on your CPU.
Further, on CONFIG_SMP=n builds with CONFIG_DEBUG_SPINLOCK=n, the
return value is always 0.

So we should not use QDF_BUG to test/assert its return value, only be
used for debugging purpose.

Change-Id: I8854ebc6b96698f5272d77750da7d18582a288e9
CRs-Fixed: 2852179
2021-01-15 04:06:46 -08:00
Abhishek Ambure
233ce05ae0 qcacld-3.0: Make wait_for_key timer per vdev
Currently, wait_for_key timer (hTimerWaitForKey and WaitForKeyTimerInfo)
are defined globally, which may cause issues in case of STA + STA.
In case of STA + STA, wait_for_key timer for each STA should get
start and stop independently.
In order to make wait_for_key timer per vdev context, move
hTimerWaitForKey and WaitForKeyTimerInfo to struct csr_roam_session.

Change-Id: Idfeea4a8ceee9ee77eb047283b40090f390f5484
CRs-Fixed: 2852960
2021-01-15 04:06:42 -08:00
snandini
4a0a078e47 Release 5.2.0.218F
Release 5.2.0.218F

Change-Id: I962abbed4ce8263e531158317dc3af29243a8b5f
CRs-Fixed: 774533
2021-01-15 01:58:39 -08:00
Madhvapathi Sriram
e128ee09ef qcacld-3.0: Validate dialog id in TWT setup request
Incorrect dialog id can cause add dialog request to target to fail.
Validate the id from user before sending it to the target.

Change-Id: Ib40b2554a1a420e9b799aab80a991fbab484667f
CRs-Fixed: 2827838
2021-01-15 01:58:39 -08:00
snandini
7630ee4a29 Release 5.2.0.218E
Release 5.2.0.218E

Change-Id: Iaf2e468a71281c890fc54fdc8b782ee44f21142a
CRs-Fixed: 774533
2021-01-14 13:27:32 -08:00
Jianmin Zhu
3a81879ef1 qcacld-3.0: Fix long ping delay after enable RTPM
Issue1: Driver RTPM state is ON/NONE, Kernel state is RESUMING.
cdp_runtime_resume is already complete,
hif_pm_runtime_get return -E_INPROGRESS,
dp_tx_hw_enqueue will set the flush event,
but cdp_runtime_resume is already done,
this flush event will be handled only on next pkt tx.

Issue2: Driver RTPM state: Resuming
hif_pm_runtime_get returns -EBUSY,
dp_tx_hw_enqueue is interrupted by any IRQ,
cdp_runtime_resume is completed,
dp_tx_hw_enqueue will set the flush event,
This flush event will be handled only on next pkt tx.

Fix:
Introduce a link_state_up atomic variable in hif to track the link state
change by pld_cb.
Set atomic variable link_state_up=1 in pmo_core_psoc_bus_runtime_resume
just after pld_cb. pld_cb brings the PCIe bus out of suspend state.
Set atomic variable link_state_up=0 in pmo_core_psoc_bus_runtime_suspend
just before pld_cb. pld_cb puts the PCIe bus into suspend state.

Introduce dp_runtime_get and dp_runtime_put.
dp_runtime_get get refcount with increment of an atomic variable.
dp_runtime_put return refcount with decrement of  this atomic variable.
If hif_pm_runtime_get returns -EBUSY or -EINPROGRESS,
take the dp runtime refcount using dp_runtime_get,
check if the link state is up, write TX ring HP,
return the dp runtime refcount using dp_runtime_put.

cdp_runtime_suspend should reject the suspend, if dp_runtime_get is non
zero.
cdp_runtime_resume should wait until dp_runtime_get becomes zero or time
out, then flush pending tx for runtime suspend.

Change-Id: I7f38b3dc6975fcc208ad85e913564dfef5cc1cb7
CRs-Fixed: 2849002
2021-01-14 13:27:32 -08:00
snandini
aa35222b3e Release 5.2.0.218D
Release 5.2.0.218D

Change-Id: I4fe02fa83388458fa6476c1196f88f548b682fe3
CRs-Fixed: 774533
2021-01-14 09:51:21 -08:00
Jianmin Zhu
a64dc46baf qcacld-3.0: Fix channel width and center freq1 mismatch issue
In beacon, if STA Channel Width is 1, indicate 40M width is supported,
but Secondary Channel Offset is 0, indicate 40M channel is disabled,
20M width should be set instead of 40M.
Refer 802.11-2016 Table 9-168 HT Operation element fields and
subfields.

Change-Id: Ifb130b3447e4f10723295b93e505df929a16486d
CRs-Fixed: 2854933
2021-01-14 09:51:21 -08:00
snandini
08ba133bf7 Release 5.2.0.218C
Release 5.2.0.218C

Change-Id: Icce6ed39f78aa99810a81fe70f3cf908f8615094
CRs-Fixed: 774533
2021-01-14 04:20:51 -08:00
Jia Ding
b401380319 qcacld-3.0: Allcoate tSirProbeReq on the heap
tSirProbeReq currently occupies 452 bytes on 32-bit platform and
could potentially lead to stack corruption. Therefore allocate
it on the heap to reduce stack size.

Change-Id: I6c86e09d188d886cd5bea8b3fd73238d9f97937d
CRs-Fixed: 2852289
2021-01-14 04:20:51 -08:00
snandini
23d5d10791 Release 5.2.0.218B
Release 5.2.0.218B

Change-Id: I134d10d4f0f1cdd0f3f2e47e636e45a59a12f404
CRs-Fixed: 774533
2021-01-13 22:24:19 -08:00
gaurank kathpalia
e484040fb0 qcacld-3.0: Move code from CSR to roam scan offload to new structs
Move code from CSR to roam scan offload to use new converged
structures.

Change-Id: Ie69a88f419d38ec611b4dc18ed15d7eb1f53e1ae
CRs-Fixed: 2853488
2021-01-13 22:24:19 -08:00
snandini
d996aa9f85 Release 5.2.0.218A
Release 5.2.0.218A

Change-Id: I0ca3098e7d37e41d32de38861c0ff788b3afa30a
CRs-Fixed: 774533
2021-01-13 19:53:26 -08:00
Arun Kumar Khandavalli
fd73c1e98e qcacld-3.0: Debug the reason for recovery during driver unload
During the driver unload whenever the recovery is triggered in
the current implementation the request is silently dropped, this
is resulting issues in other areas during the driver which is making
it harder to debug the issue.

Trigger system panic to debug the reason for recovery during the
driver unload.

Change-Id: I67c6c7e8b19dcc3371cd6691c0e3f19be4c33c46
CRs-Fixed: 2850591
2021-01-13 19:53:26 -08:00
snandini
5f166ade03 Release 5.2.0.218
Release 5.2.0.218

Change-Id: Ibf61e5b21fbf33cea38bac181fa7544223d25e7c
CRs-Fixed: 774533
2021-01-13 15:00:03 -08:00
Liangwei Dong
cab9317d71 qcacld-3.0: Change INI sae_connect_retries defalut 0x52
Change "sae_connect_retries" to 0x52 to increase SAE retries:
1 roam auth retry, 2 auth retry and 2 full connection retry.

Change-Id: I5b11dd07abfccfca9529ba9350e326dbf4c23a7a
CRs-Fixed: 2846440
2021-01-13 15:00:03 -08:00
snandini
aab8afc43d Release 5.2.0.217Z
Release 5.2.0.217Z

Change-Id: I598db89bb08b0def42df37f45d701f746de22a08
CRs-Fixed: 774533
2021-01-13 12:19:32 -08:00
Pragaspathi Thilagaraj
f7735c8ba3 qcacld-3.0: Add support for TWT get capabilities vendor command
Add support to get the TWT self and peer capabilities via the
QCA_WLAN_TWT_GET_CAPABILTIES vendor command.
High 16 bits - self capabilities,
Low 16 bits : peer device’s capabilities

The meaning of each bit is below:
Bit 0: Requester Support
Bit 1: Responder Support
Bit 2: Broadcast TWT Support
Bit 3: Flexible TWT Support
Bit 4: TWT Required

Change-Id: I78b0c5902c89fe3a8eec1697fa513aac3c2b7a36
CRs-Fixed: 2847177
2021-01-13 12:19:32 -08:00
snandini
fccdc9cc8a Release 5.2.0.217Y
Release 5.2.0.217Y

Change-Id: I9088f979fb3b89d1f93b9034c5856961b0108d26
CRs-Fixed: 774533
2021-01-13 10:17:17 -08:00
sheenam monga
f0fbe9a794 qcacld-3.0: Dump blacklist bssids
Add dump to print blacklisted bssids
with reason code and source.

Change-Id: I85734ad5aea0c8088e3f8ed2bdbb31971457942d
CRs-Fixed: 2849487
2021-01-13 10:17:17 -08:00
Rajasekaran Kalidoss
05b4328025 qcacld-3.0: Register cp stats legacy ops
Support has been added in common code to register both
common tx ops and MC/WIN specific tx ops. Add support to
register and tx ops for MC specific stats.

Change-Id: I4e5263e4685a707008ec3c5e96f50c707b071fe9
CRs-Fixed: 2851256
2021-01-13 10:17:12 -08:00
Dundi Raviteja
1c569db101 qcacld-3.0: Reduce stack frame size in lim_check_rsn_ie
Reduce stack frame size of lim_check_rsn_ie()
by allocating dynamic memory to tSirMacRsnInfo.

Change-Id: I4e65282a765854085cef9ac887716c440a699d84
CRs-Fixed: 2850232
2021-01-13 10:17:07 -08:00
snandini
7be49de84a Release 5.2.0.217X
Release 5.2.0.217X

Change-Id: I7cf7d06f77e9d730cdf1cf7fcf1658f95c4aaf60
CRs-Fixed: 774533
2021-01-13 07:03:14 -08:00
Dundi Raviteja
6aae6520d8 qcacld-3.0: Reduce stack frame size in lim_send_tdls_teardown_frame
Reduce stack frame size of lim_send_tdls_teardown_frame()
by allocating dynamic memory to tDot11fTDLSTeardown.

Change-Id: I3a4660a33c7e21990e7fbc6eb7d2b057523249b6
CRs-Fixed: 2850152
2021-01-13 07:03:14 -08:00
Dundi Raviteja
6528e8101e qcacld-3.0: Reduce stack frame size in lim_check_wpa_ie
Reduce stack frame size of lim_check_wpa_ie()
by allocating dynamic memory to tSirMacRsnInfo.

Change-Id: I3e836621c563ba577b127e7f8e984d70f80d2e05
CRs-Fixed: 2850221
2021-01-13 07:03:07 -08:00
Dundi Raviteja
13b5c9f6f7 qcacld-3.0: Reduce stack frame size in lim_process_auth_retry_timer
Reduce stack frame size of lim_process_auth_retry_timer()
by allocating dynamic memory to tSirMacAuthFrameBody.

Change-Id: Ie7b5c000a3d35cfdef4f99d04b5b86b3c0935994
CRs-Fixed: 2850180
2021-01-13 07:03:02 -08:00
snandini
e7ec1e8a37 Release 5.2.0.217W
Release 5.2.0.217W

Change-Id: I4ec81486e5389485c361142b921667ab6166a366
CRs-Fixed: 774533
2021-01-13 04:42:57 -08:00
gaurank kathpalia
8e098a3412 qcacld-3.0: Replace CSR API with connection mgr API part 4
Replace the CSR API to get connect info with cnx mgr API.

Change-Id: I22f83727e4b2e6f6b7258ef41f8595e789015a58
CRs-Fixed: 2853089
2021-01-13 04:42:57 -08:00
snandini
68a81ed3f2 Release 5.2.0.217V
Release 5.2.0.217V

Change-Id: I85fc46370831fc07cbfa8d0fd3cb056f1280f315
CRs-Fixed: 774533
2021-01-13 02:34:30 -08:00
Rakesh Pillai
b36d2caa0d qcacld-3.0: Avoid logging in hif_pm_runtime_get from TX path
The hif_om_runtime_get logs the requester for resume
when the device is in runtime suspend/suspending state.
Due to such kind of logging from a softirq context, its
execution time will be longer and can block the execution
of other time critical softirqs.

Fix this by marking the call to hif_om_runtime_get as
a call from critical context and avoid the logging for
this call.

Change-Id: I2d7d0b3645f351af11a016bd45c5930f0df5401a
CRs-Fixed: 2850952
2021-01-13 02:34:30 -08:00
Liangwei Dong
7e7135de1b qcacld-3.0: Record station connect/disconnect event
Record station connect/disconnect event for debug connectivity
issues. Dump the latest 20 records for unexpected disconnect case.

Change-Id: Ibf04b98a0124b84b77e3b5647e4d4234189b0ab2
CRs-Fixed: 2849471
2021-01-13 02:34:25 -08:00
snandini
81559625c2 Release 5.2.0.217U
Release 5.2.0.217U

Change-Id: Ia44fa93f376be3be376cf22c3708ad710e857b7b
CRs-Fixed: 774533
2021-01-12 22:13:52 -08:00
Tushnim Bhattacharyya
41dbcdc6b6 qcacld-3.0: Fix compilation error autological-overlap-compare in csr
Fix overlapping true comparison compilation error in CSR.

Change-Id: I42f0a4bd9d0cd431a89aff7f3993917b98e6eeb4
CRs-Fixed: 2849823
2021-01-12 22:13:52 -08:00
Rajeev Kumar
50e92e6f3c qcacld-3.0: Prevent RTPM wow for wow feature unit test
Prevent RTPM wow when executing wow feature unit tests to avoid
conflicting wow states.

Change-Id: I279f99e5b66ad0a28bdcb8a54534b0b048db5acd
CRs-Fixed: 2853620
2021-01-12 22:13:47 -08:00
snandini
101984589e Release 5.2.0.217T
Release 5.2.0.217T

Change-Id: I9bb5fa68e3a729d8b1ed81b77fa90158796a5dff
CRs-Fixed: 774533
2021-01-12 20:09:38 -08:00
Jeff Johnson
2250571881 qcacld-3.0: Makefile: Avoid overwriting KBUILD_OPTIONS
The new Android build infrastructure will invoke the Makefile
instead of invoking Kbuild. Update the Makefile logic to not
set KBUILD_OPTIONS if they are already set since this is an
indication that the Makefile is being invoked via Android.mk.

Change-Id: I0442d083be4a9e335d683ab864d5fa8a1f18ac4a
CRs-Fixed: 2852886
2021-01-12 20:09:38 -08:00
Jeff Johnson
d7e399e977 qcacld-3.0: Add support for Build_external_kernelmodule.mk
The Android build infrastructure is transitioning to a new
mechansim for building external modules. Update the qcacld-3.0
driver to use that mechanism for toro builds.

Change-Id: I7d73bc1ccbde5ecc74c661fd6e31525b266413cd
CRs-Fixed: 2852877
2021-01-12 20:09:35 -08:00
snandini
69e2a1091b Release 5.2.0.217S
Release 5.2.0.217S

Change-Id: Ia7c9d3ff408f8a7fac35aacede959b5e9eb4ec38
CRs-Fixed: 774533
2021-01-12 17:44:26 -08:00
Pragaspathi Thilagaraj
c4ebe66ee5 qcacld-3.0: Advertise TWT capability if "enable_twt" ini is true
Currently in SAP and STA mode the driver advertises TWT
capabilities in the HE capabilities IE based on the below ini
values irrespective of the master ini "enable_twt" to enable
the twt feature:
"he_twt_requestor","he_twt_responder", "he_bcast_twt",
"he_flex_twt_sched".
So even with the ini is disabled, twt capabilities are advertised

Advertise TWT capability only if "enable_twt" ini is true.

Change-Id: Iae3a98ee339f3859391e0deb64ddd354634b0cbf
CRs-Fixed: 2844516
2021-01-12 17:44:26 -08:00
snandini
48a6fa835d Release 5.2.0.217R
Release 5.2.0.217R

Change-Id: I2c4203a92ce586b403117585e1a2aa193a7184ef
CRs-Fixed: 774533
2021-01-12 14:34:26 -08:00
Ashish Kumar Dhanotiya
2533300a9c qcacld-3.0: Add hdd api to check if vdev is associated
Currently there is no hdd api to check if vdev is associated
to some ap.
Add hdd api to check if vdev is associated with the help of
connection manager api for the same purpose.

Change-Id: I696980bc4235b738be8bdde5cfe4bf4157b45b6a
CRs-Fixed: 2852471
2021-01-12 14:34:26 -08:00
snandini
057ade00b8 Release 5.2.0.217Q
Release 5.2.0.217Q

Change-Id: Ie023cc90dbdf7b10c7b1c720a35ceff9bc5acb96
CRs-Fixed: 774533
2021-01-12 12:11:13 -08:00
Min Liu
c7ca6d5f26 qcacld-3.0: Add P2PGO support for get_station command
Add P2PGO support to get the remote peer stats for cfg80211
callback get_station.

Change-Id: I910e9c3edab481e8abc0f28f0a4b7df2b73c2c59
CRs-Fixed: 2851955
2021-01-12 12:11:13 -08:00
Srinivas Dasari
1ef019cc0d qcacld-3.0: Abort ongoing STA connection when SAP goes down
Currently, ongoing STA connection is not aborted when a
stop_adapter is received on SAP. This results in a peer leak in
the below scenario,
1. Turn on SAP.
2. Initiate STA connection to an SSID which has multiple BSSIDs in
   dense environment. Connection gets retried to next BSSID when
   it fails to connect to the current BSSID.
3. Turn off SAP while connection is happening. stop_bss command
   doesn't get processed and waits in queue as the STA connection
   is going on.
4. If stop_bss timer(10 seconds) expires while STA connection is
   in progress, SAP vdev is destroyed without cleaning up self
   peer. So, there would be a peer leak.

Abort the ongoing sta when SAP goes down, so that stop_bss gets
processed cleanly and self peer is also cleaned up.
Same is applicable for P2P_GO as well.

Change-Id: I888a602cd27a9bbec54fb356ed1488cd9fc2847c
CRs-Fixed: 2852023
2021-01-12 12:11:09 -08:00
snandini
cdccb7a2d9 Release 5.2.0.217P
Release 5.2.0.217P

Change-Id: I718067741c2929ba01a3f5e8758b1f35cf5fafac
CRs-Fixed: 774533
2021-01-11 15:13:31 -08:00