Commit graph

23,002 commits

Author SHA1 Message Date
Madan Koyyalamudi
1e1fac45ea Release 2.0.8.31Z
Release 2.0.8.31Z

Change-Id: I35f76c62c9edc63bcd716968f05a48a46eb4fc43
CRs-Fixed: 774533
2022-12-27 04:58:20 -08:00
Asutosh Mohapatra
5307d19a75 qcacld-3.0: Restrict mode change to FTM mode scenarios
Currently if driver load/unload is in progress or driver is
loaded and mode change to FTM mode is issued from the sys
path, memory leakage occurs during driver unload.

To address this issue, don't change mode if driver is already
loaded or load/unload is in progress.

Change-Id: I09cacaf11d516c62de1a9699547eb01476afdc1f
CRs-Fixed: 3349217
2022-12-27 04:58:19 -08:00
Madan Koyyalamudi
9c9d6f8257 Release 2.0.8.31Y
Release 2.0.8.31Y

Change-Id: If244ada004a904352724a57c43d1b8e8f7d493e6
CRs-Fixed: 774533
2022-12-23 12:38:12 -08:00
Sandeep Puligilla
d1372d6e6a qcacld-3.0: Incorrect MCS index is passed
Fix the potential out of bound read of the supported MCS rate
array.

Change-Id: I172dcac9d1ce79b16e4cd2a4ee321d9e93102866
CRs-Fixed: 3304227
2022-12-23 12:38:11 -08:00
Madan Koyyalamudi
0a1a87c7bd Release 2.0.8.31X
Release 2.0.8.31X

Change-Id: Ia7698f3498f3d2fad9442cbee7f8755086290e24
CRs-Fixed: 774533
2022-12-23 01:12:47 -08:00
Vinod Kumar Myadam
7a3a40a77a qcacld-3.0: Change default value of gSoftApMaxPeers
In the current driver implementation, the default ini value of
gSoftApMaxPeers is set to 32, but for mobile devices, FW can
only support 10 SAP peers at max. Hence, change the default
value of gSoftApMaxPeers to 10.

Change-Id: I8c5a2a8422f02bb464a11d823f8528ebb88bb34c
CRs-Fixed: 3227078
2022-12-23 01:12:47 -08:00
Madan Koyyalamudi
9713cd0293 Release 2.0.8.31W
Release 2.0.8.31W

Change-Id: I7b38836d14b9ea6c1f06a22a4ca14d7b406279a9
CRs-Fixed: 774533
2022-12-13 11:47:32 -08:00
Srikanth Marepalli
d54888ac08 qcacld-3.0: Introduce ini to configure roam RSSI diff for 6 GHz AP
This is applicable only when the roaming happens from 2.4 GHz/5 GHz
to 6 GHz AP.
The value is used to check if the 6 GHz AP to which we are roaming
(from 2.4 GHz/ 5 GHz) is better than current AP in terms of RSSI.
This checking is disabled if the value is set to zero.

Change-Id: I77f1183e1fd704dfa153841e669a20c9e75d0fe7
CRs-Fixed: 3353346
2022-12-13 18:32:57 +05:30
Madan Koyyalamudi
0b62273e54 Release 2.0.8.31V
Release 2.0.8.31V

Change-Id: I478f1db63bb6e070348c9b9ceac6d4d61859869b
CRs-Fixed: 774533
2022-12-13 02:51:38 -08:00
Srikanth Marepalli
30d7a094d6 qcacld-3.0: Add vendor attribute to include 6 GHz in roam full scan
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This would include the 6 GHz PSC
frequencies by default.
This attribute allow that behavior to be modified to include PSCs only
if 6 GHz use has been detected in the environment.

Change-Id: I6dc380419f14b920737fd87cd9a487c28364563b
CRs-Fixed: 3351697
2022-12-08 18:31:20 +05:30
Madan Koyyalamudi
2ac3115540 Release 2.0.8.31U
Release 2.0.8.31U

Change-Id: I7b16319fcaf774cafaab609bd43fd66204a67a10
CRs-Fixed: 774533
2022-12-06 01:03:07 -08:00
Srikanth Marepalli
f61ff8e55c qcacld-3.0: Add vendor attribute to optimize roam full scan
User can include/exclude the frequencies in roam full scan that
were already scanned by the previous partial scan, using the new
vendor attribute introduced as part of roam vendor command.
Host sends the configured value to firmware.
As per current implementation of roam scan, if there are no APs
found during partial scan, immediately a full scan will be
initiated as a fallback. This includes all channels that were
already scanned as part of partial scan.
This attribute controls the optimization, to exclude all channels
which are already scanned as part of partial scan.

Change-Id: Icd6381b4daadcfe32dabda131ae92e2e32f07f1d
CRs-Fixed: 3343657
2022-12-02 15:44:09 +05:30
Madan Koyyalamudi
35b2cc7cb7 Release 2.0.8.31T
Release 2.0.8.31T

Change-Id: I9218e2b481f28a2ba9e3a093748357943623703d
CRs-Fixed: 774533
2022-11-28 05:52:31 -08:00
Srikanth Marepalli
dce2e3a8a1 qcacld-3.0: Add vendor command attribute for roam hand-off delay
User can configure roam hand-off delay value using the new vendor
attribute introduced as part roam vendor command.
This change gets the configured value and sends it to firmware.
And firmware delays the roam Hand-off (in msec) by the specified
duration to receive pending RX frames from the current BSS.

Change-Id: Ic328c077cba06532ee8ffed12cde072c816b92e0
CRs-Fixed: 3329964
2022-11-23 19:48:25 +05:30
Madan Koyyalamudi
ae69ee9626 Release 2.0.8.31S
Release 2.0.8.31S

Change-Id: Ieebedb76d6d163397603b6e3346456b53a4c6d05
CRs-Fixed: 774533
2022-11-23 03:15:17 -08:00
Abhishek Singh
27e8e32459 qcacld-3.0: Do not take SME lock to check roaming in progress
Checking for roaming in progress wait on SME lock from work queue,
while the other thread who has taken SME lock wait for this
work queue to complete the execution.

To fix avoid taking SME lock while checking for roaming in progress.

Change-Id: I428bc957c276f36751cdb9a4b3337a8cc2d45f7f
CRs-Fixed: 3344013
2022-11-22 21:48:16 -08:00
Madan Koyyalamudi
8ed9cddc1a Release 2.0.8.31R
Release 2.0.8.31R

Change-Id: I3e251702353057bcd1de6045400ed91030d75c43
CRs-Fixed: 774533
2022-11-21 09:20:56 -08:00
Vulupala Shashank Reddy
61c7392f4c qcacld-3.0: Update protected bit for mgmt action frames
Host checks RMF enable and robust action frame category, if both are
true then sets protected bit in mac header of management action frame.

Change-Id: I2d57c52b66ff7abd44dd02b73ad18f13fbdef009
CRs-Fixed: 3262340
2022-11-21 09:20:56 -08:00
Madan Koyyalamudi
572fd22c36 Release 2.0.8.31Q
Release 2.0.8.31Q

Change-Id: I16b8762aef609b388c1680145a417ed0fd1d2f09
CRs-Fixed: 774533
2022-11-16 21:06:45 -08:00
Liangwei Dong
968eafb3a3 qcacld-3.0: Fix obss_width_trigger_interval zero in WMI command
DUT roams to 2 GHz channel 6 bw 20 MHz,  OBSS parameters are not
initialized by lim_fill_ft_session. Later when DUT gets CSA event
to 2 GHz channel 1 bw 40 MHz, the OBSS scan command will send
invalid obss_width_trigger_interval with zero value to target.
Fix by initialize the OBSS parameters without check current AP's
BW.

Change-Id: I6f895371898fde292cde5a108a3b4fcd95836186
CRs-Fixed: 3287522
2022-11-16 21:06:45 -08:00
Madan Koyyalamudi
7ddb90fae2 Release 2.0.8.31P
Release 2.0.8.31P

Change-Id: I319d7abe0a159df13cec2e10addb3566fa995fcd
CRs-Fixed: 774533
2022-11-15 09:15:55 -08:00
Vulupala Shashank Reddy
b92520d012 qcacld-3.0: Register DSCP action frame for wake up
Currently, the bitmap of action frames that can wake up the
host during suspend is sent via the wmi command
WMI_WOW_SET_ACTION_WAKE_UP_CMDID. This bitmap doesn't include
DSCP action frames so currently the host doesn't wake up for
DSCP action frames when in suspend mode.

Enable wake up for DSCP action frame for runtime PM as well
as for wow mode.

Change-Id: I51ba3e8ef52755af25ed922161028dfbaccaa250
CRs-Fixed: 3262353
2022-11-15 09:15:55 -08:00
Vulupala Shashank Reddy
4e4c1702bb qcacld-3.0: Forward all vendor specific action frames to supplicant
On reception of vendor specific action frames, host performs basic sanity
on vendor specific action frames fields and then forwards to supplicant.

Change-Id: Ib22b9a431411fff8128e461972b81b66688a0919
CRs-Fixed: 3262331
2022-11-15 09:15:50 -08:00
Vulupala Shashank Reddy
7eb816e34c qcacld-3.0: Disable MSCS feature in with "mscs_pkt_threshold=0"
mscs_pkt_threshold - This ini specifies the Voice pkt count
threshold to Send the MSCS action frame to AP. To disable MSCS
feature in driver set mscs_pkt_threshold = 0 in ini file.

Change-Id: Ie1d8d3f3289d8f41a16f187bf9256b959019d998
CRs-Fixed: 3262346
2022-11-15 09:15:44 -08:00
Madan Koyyalamudi
621346a8e7 Release 2.0.8.31O
Release 2.0.8.31O

Change-Id: I6cb29ab57caf38a1d7a0c39c66895995c8ad2b10
CRs-Fixed: 774533
2022-11-10 13:09:55 -08:00
sandhu
66b5db4552 qcacld-3.0: check staId index bound into timer array
Check whether staId is not out of bound while accessing the
timer array.

Change-Id: I347c314a324934d4a62808551b1552aa4a76a5d7
CRs-Fixed: 3290301
2022-11-10 13:09:55 -08:00
Madan Koyyalamudi
c67e040058 Release 2.0.8.31N
Release 2.0.8.31N

Change-Id: I6871be4d6254857c3a348c8ad254a9cc7185d778
CRs-Fixed: 774533
2022-11-09 08:49:55 -08:00
Surabhi Vishnoi
a83914cf4b qcacld-3.0: Reset roaming_in_progress when ROAM_HO_FAILED is received
Currently, roaming_in_progress is set during ROAM_START event from
firmware and reset after ROAM_SYNC_COMPLETE or ROAM_ABORT event.
But there can be a scenario that firmware sends ROAM_START event
followed by ROAM_HO_FAILED event which indicates that roaming is
failed to host, so roaming_in_progress flag needs to be reset at
ROAM_HO_FAILED otherwise subsequent data path related configuration
and stats request from userspace will fail as they will assume
that roaming is in progress.

Change-Id: I413359a9152de11c56125192931ab446a0dd4727
CRs-Fixed: 3308567
2022-11-09 08:49:55 -08:00
Madan Koyyalamudi
90e2bfade6 Release 2.0.8.31M
Release 2.0.8.31M

Change-Id: I4dcbbc9650b29024b3904bfc7ed03a5ae7ad9ad5
CRs-Fixed: 774533
2022-11-07 15:40:54 -08:00
Krupali Dhanvijay
72f37fd701 qcacld-3.0: Update pmk for roamed AP to pmk cache table
Assume AP1 and AP2 are SPMK APs. For SPMK AP(s), Host
should add an entry of an AP in PMK cache table like below in
two cases only:
Case 1. When DUT successfully associated with SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing beacon of associated AP after
            successful connection.
Case 2. When DUT successfully roamed to SPMK supported AP
            In this case host update “is_spmk_ap” flag in PMK
            table by parsing roam sync indication event.

In case of connection with SPMK AP, Host selectively deletes PMK
entry for other SPMK supported AP(s) on basis of “is_spmk_ap”
flag and maintains only one entry for all SPMK AP(s). And host
sends the same single PMK in RSO for further roaming to SPMK AP.
Initially, DUT is connected with AP2. Then Disconnection happens with
AP2 due to NUD failure. After disconnection, the upper layer sends
flush PMK requests for AP1 and AP2. Host deletes old PMK entries for
both APs. Now upper layer sends a set PMK request for AP2. Host adds
AP2 entry in PMK cache table but host does not set "is_spmk_ap" flag
in PMK table for this entry as DUT is not connected to AP2. Now host
receives a connect request for AP1 from the upper layer. DUT
successfully associated with AP1 by performing full SAE authentication.
Host adds an entry for AP1 in the PMK cache table and sets "is_spmk_ap"
flag for AP1 but fails to delete the entry for other SPMK AP(s), here
AP2, from PMK cache table. This is because of "is_spmk_ap" flag is not
set for AP2. At this point of time below is the PMK cache table entry
for SPMK AP(s): The Host PMK cache table has two entries for two SPMK
APs.

   BSSID        PMK     is_spmk_ap flag
    AP2        PMK2           0
    AP1        PMK1           1

Now FW roams to AP2 using PMK1. Host process roam sync indication for
AP2 and updates "is_spmk_ap" flag for AP2 in the PMK cache table. As
Host has a stale entry for AP2 in the PMK cache table, Host sends AP2’s
PMK (here PMK2) in RSO command which firmware will use for further
roaming but roaming fails due to invalid PMK, as target SPMK AP expects
PMK1 in reassociation request.

To handle these scenarios, FW should send PMK info of roamed AP and
host override stale entry for roamed AP (if any) with roamed AP's PMK
in PMK cache table.

Change-Id: I5e46d16a64aa05469ebc389df9b638351d02a1e0
CRs-Fixed: 3313884
2022-11-07 15:40:53 -08:00
Madan Koyyalamudi
271f2f91a7 Release 2.0.8.31L
Release 2.0.8.31L

Change-Id: If38f1d40a116199eba929ec33ca5277a19238e71
CRs-Fixed: 774533
2022-10-31 14:34:23 -07:00
Rahul Gusain
413aa5ef82 qcacld-3.0: Make NAN high priority than TDLS in legacy platforms
Firmware handles all NAN concurrencies in the platforms which
don't advertise the WMI service cabability
WMI_SERVICE_NAN_DISABLE_SUPPORT. Host takes care of the NAN
concurrency if the capability is advertised by firmware.
But there can be some legacy targets where firmware wants to
offload NAN+TDLS concurrency alone to the host and it takes care
of rest of the concurrencies. This is to make NAN of higher
priority and disable TDLS when NAN is active. Currently, TDLS is
of more priority than NAN and it can't change the order as it
can't disable TDLS to change the priority.

Currently, driver doesn't parse the NAN messages(even NAN enable
request) in such platforms. Parse the NAN messages and disable
TDLS upon NAN enable request. Rely on NAN state machine to
allow/disallow new TDLS requests. This needs NAN enable status.

Change-Id: Ie9c7c1cc2f1ed6328a31b93077c2928940fc3450
CRs-Fixed: 3263730
2022-10-31 18:09:37 +05:30
Madan Koyyalamudi
7c26b50266 Release 2.0.8.31K
Release 2.0.8.31K

Change-Id: I32fd84670458229fb0fad938d339b779011a20ec
CRs-Fixed: 774533
2022-10-27 08:47:48 -07:00
Vulupala Shashank Reddy
037f0d9a3f qcacld-3.0: Config support for WMM based TXOP feature
Add configuration support for WMM based TXOP feature.

Change-Id: Ide52b7d4b7bca590515e8697506d2b52744a7fa6
CRs-Fixed: 2947604
2022-10-27 10:48:24 +05:30
Madan Koyyalamudi
0de83ae841 Release 2.0.8.31J
Release 2.0.8.31J

Change-Id: I1aa87130f3fa2218300dd706067b9287f8595357
CRs-Fixed: 774533
2022-10-18 07:12:19 -07:00
Ashish
3bdab6cf83 qcacld-3.0: Resume all components in case of suspend failure
Currently if driver suspends all the components and after that
if host suspends fails it does not resume all the suspended
components which leads in failure of the operations from these
components.

In current issue driver suspends all the components and it
fails to suspend dp rx refill thread and because of which host
suspend fails. Driver suspends scan component as well as part
of all component suspend which is leading scan requests failures.

TO address above issue, resume all components in case of suspend
failure.

Change-Id: I693049a0c4089eb440f459ed3a066e741e8594fe
CRs-Fixed: 3311567
2022-10-18 15:05:40 +05:30
Madan Koyyalamudi
380df088c8 Release 2.0.8.31I
Release 2.0.8.31I

Change-Id: Ic57d969dd12d859478a12b61219a43cd54e24ce1
CRs-Fixed: 774533
2022-10-11 07:54:06 -07:00
Srikanth Marepalli
00c2ec2982 qcacld-3.0: Print the TX AMPDU in the LL Stats request debug log
In LL Stats request handler the rx_ampdu is wrongly printed as
tx_ampdu. Rectified the debug log to print both the tx_ampdu
and rx_ampdu.

Change-Id: I00df3da79a0aed95cda76edb7e3f80409c6abf75
CRs-Fixed: 3254595
2022-09-30 15:57:40 +05:30
Madan Koyyalamudi
a1928e9c6d Release 2.0.8.31H
Release 2.0.8.31H

Change-Id: I299e8a0d6949c5ce8fb7399a2b9daf1831f37347
CRs-Fixed: 774533
2022-09-28 08:26:32 -07:00
Surya Prakash Sivaraj
76ab6160d1 qcacld-3.0: Use minimal filter for roam candidate selection
Roam invoke is triggered from userspace using bssid and channel
of the target AP. Therefore, use only the bssid and channel
specified by the userspace to retrieve the roam candidate.

Change-Id: I61d156cdd19925ba83ccf49723ed7b8d49eea3d1
CRs-Fixed: 3295815
2022-09-27 12:24:02 +05:30
Madan Koyyalamudi
36d34acba6 Release 2.0.8.31G
Release 2.0.8.31G

Change-Id: Ic5289a788a7fc0f3f06a00b3a886961ef35a4b0a
CRs-Fixed: 774533
2022-09-24 03:23:22 -07:00
Dundi Raviteja
39c0b44b0e qcacld-3.0: Disable IPA offload for Atherton target
Disable IPA offload for Atherton targets.

Change-Id: I79f17ea7b1de3b238fff39ad5c2a127c2cf72acd
CRs-Fixed: 3295431
2022-09-24 03:23:22 -07:00
Madan Koyyalamudi
dd2f00dda9 Release 2.0.8.31F
Release 2.0.8.31F

Change-Id: I14e8893bfdbcc1372c472c6ae834cf97563ee7b0
CRs-Fixed: 774533
2022-09-23 07:58:14 -07:00
Vinod Kumar Myadam
0b4c6df658 qcacld-3.0: Fix random mac addr set issue
For every random mac addr set/clear command to firmware,
driver gets reply from firmware whether success or fail.
But sometimes, if the response event is delayed by more
than 100ms by firmware then timeout happens in HDD.
Upon timeout, driver sends clear random mac command which
gets dropped in p2p_process_set_rand_mac API as prev command
status from firmware is pending.

So fix is to increase the timeout value to 1000ms

Change-Id: Icf4240265bac67e0fd3eaf2d904a597b4bfe2e25
CRs-Fixed: 3297401
2022-09-22 10:41:45 +05:30
Madan Koyyalamudi
bd35b6332d Release 2.0.8.31E
Release 2.0.8.31E

Change-Id: I1f5a159f3642fa939060f95af6b405a30491a1a8
CRs-Fixed: 774533
2022-09-09 03:13:04 -07:00
Vulupala Shashank Reddy
46cd6281de qcacld-3.0: Fix the channel for M2 packet in pkt capture mode
Currently in packet capture, channel for data packets is updated
from pdev. We are updating channel in pdev when we receive auth
frame in mon thread. But, sometimes we are updating channel in
radiotap of M2 in pkt_capture_update_tx_status, before mon thread
process auth packet and update channel in pdev, because of which
we are updating wrong channel in M2.

So, to avoid this move update of channel from mon thread to
pkt_capture_mgmtpkt_process.

Change-Id: Icf14c4331849ad7cfdfbd7a3043e4e4dc3d33721
CRs-Fixed: 3266890
2022-09-08 22:44:38 -07:00
Madan Koyyalamudi
eba7e0532b Release 2.0.8.31D
Release 2.0.8.31D

Change-Id: I1c4fe36ade34db0bc10506f2d02f12a60dbd105d
CRs-Fixed: 774533
2022-09-05 09:22:50 -07:00
Jianmin Zhu
12e7a20232 qcacld-3.0: Fix peer unmap failure due to invalid roam scan mode value
When supplicant disables firmware roam, RSO stop command with
roam scan mode value 4 is sent to firmware and this value 4
indicates the firmare to enable only Forced roam trigger(roam
invoke command from host). But before
ROAM_DEINIT(WMI_VDEV_PARAM_ROAM_FW_OFFLOAD with value zero) is
posted to firmware, the roam scan mode should be 0 or else there
could be potential peer unmap failures if firmware has already
started roam and disconnect is triggered from north bound or from
peer.
To avoid this, in the roam offload state machine handle the state
switch from RSO stopped to deinit if supplicant disabled roaming
flag is set and send RSO stop with roam scan mode value 0 to
firmware.

Change-Id: I6ff39f43bd75c95ed03c357a5602e25a5a0ffd92
CRs-Fixed: 3229082
2022-09-05 09:22:50 -07:00
Jianmin Zhu
2dc4b77a6f qcacld-3.0: Skip reset roam trigger during disconnect
For STA+STA case, if disconnect is started on one vdev,
roaming is getting disabled on other vdev to fix this
skip updating RSO state.

Change-Id: If527555c3ea3d50516be3a743bb03914b3a2359f
CRs-Fixed: 2981648
2022-09-05 16:19:16 +08:00
Madan Koyyalamudi
b94ffed16b Release 2.0.8.31C
Release 2.0.8.31C

Change-Id: Ibdb932f432b98e40ebdd73b01a6d20d257baac9e
CRs-Fixed: 774533
2022-09-01 05:25:59 -07:00