Commit graph

23,019 commits

Author SHA1 Message Date
Madan Koyyalamudi
be5ddcb85c Release 2.0.8.32G
Release 2.0.8.32G

Change-Id: I2deb4da3a411401e9808bf3eb2544bbeb97b97a1
CRs-Fixed: 774533
2023-01-16 22:25:37 -08:00
Krupali Dhanvijay
bebe7c189a qcacld-3.0: Add an attribute to set wfc state via set wifi config
Currently there is no attribute to set the wifi calling state
from user space to fw.
With this change add an attribute to set wifi config vendor
command to configure wifi calling state to fw via platform
driver.

Change-Id: I982e9a7245b9e5108cd6cbcb4162daa4b4b6a412
CRs-Fixed: 3345705
2023-01-16 22:25:37 -08:00
Madan Koyyalamudi
73e41fc294 Release 2.0.8.32F
Release 2.0.8.32F

Change-Id: Ib89b564a6ad8ecd45a8b0d99fae805306cd28a6d
CRs-Fixed: 774533
2023-01-16 12:18:42 -08:00
Krupali Dhanvijay
6054d6c4da qcacld-3.0: Add PLD API to send WFC mode to FW
Add PLD API to send WFC(WiFi Calling) mode to WLAN FW.

Change-Id: I4aef58caa93d255233d2412aa6d03017da4b5f10
CRs-Fixed: 3346545
2023-01-16 12:18:42 -08:00
Madan Koyyalamudi
416e7495ed Release 2.0.8.32E
Release 2.0.8.32E

Change-Id: If57358ff5b8f3284f9f213bd52c3be5db1565f56
CRs-Fixed: 774533
2023-01-16 05:58:26 -08:00
Nagalakshmi
ed07fad8f5 qcacld-3.0: Fix OOB in wma_scan_roam.c
Currently in wma_extscan_hotlist_match_event_handler
API, dest_hotlist get memory allocation based on numap
which takes value from event->total_entries.
But numap is limited to WMA_EXTSCAN_MAX_HOTLIST_ENTRIES
and event->total_entries more than WMA_EXTSCAN_MAX_HOTLIST_ENTRIES
can cause out of bound issue.

Fix is to populate dest_hotlist->numOfAps from numap
instead of event->total_entries to avoid any out of bound issue.

Change-Id: I756f7e4a4dcd454508bba83d4a8bbbb139530905
CRs-Fixed: 3346781
2023-01-16 03:27:58 -08:00
Madan Koyyalamudi
ec29f63087 Release 2.0.8.32D
Release 2.0.8.32D

Change-Id: I1f44d0bc903176648c80baf8044f5de5eb6d65c1
CRs-Fixed: 774533
2023-01-16 00:06:04 -08:00
Krupali Dhanvijay
dd02608be5 qcacld-3.0: Add debug logs to check how tx power is calculated
Currently, there is no print to check local constrtaint which
may be reason of tx_power updation based on power constarint is
absolute or not. Add print to check local constarint, so that
tx power updation can be monitored.

Change-Id: I463828aab69e189c6cd6c4e61e01af1ba140ab29
CRs-Fixed: 3260542
2023-01-16 00:06:04 -08:00
Madan Koyyalamudi
8d0637f083 Release 2.0.8.32C
Release 2.0.8.32C

Change-Id: I89d98c8640edd97394fea8a3b855058e9fb70565
CRs-Fixed: 774533
2023-01-10 08:42:55 -08:00
Huashan Qu
5d863d9770 qcacld-3.0: Add check to avoid potential OOB access for bssid_list
In wma_group_num_bss_to_scan_id(), bssid_list may be accessed out
of boundary.

Add check to avoid potential OOB access for bssid_list.

Change-Id: I218af0fe617f64a50c7c296c622f7fac01e1b4fc
CRs-Fixed: 3357461
2023-01-10 08:42:55 -08:00
Rahul Gusain
9242481149 qcacld-3.0: Add support to send FILS discovery frame
Prepare FILS discovery template with mandatory fields
including fd cpabilities and center frequency and also
TPE IE and send the template to firmware.
It is called when beacon template is updated.

Change-Id: I927f6a1c0bcd8fa531d48b1fa84cc256b4c1665f
CRs-Fixed: 3081251
2023-01-10 08:42:49 -08:00
Madan Koyyalamudi
b43c4037ff Release 2.0.8.32B
Release 2.0.8.32B

Change-Id: I5aef6e08ea72bf67585dcff928c7246788b2fbbd
CRs-Fixed: 774533
2023-01-09 05:21:53 -08:00
Srikanth Marepalli
4c3c4ddb3d qcacld-3.0: Correct BW parameter for CSA concurrency check
In SAP+GO concurrency, if move SAP to DFS channel (BW 160 MHz)
and cause MCC with GO, the target will do CAC on SAP, but target
doesn't support MCC with GO when SAP is CAC state.
Fix by checking correct BW of CSA target channel so that correct
DFS flag can be got and if target channel is DFS causing MCC
with other AP interface then reject CSA request.

Change-Id: Ic7821cf62d3b364e4d2ea052dc82d65d18054091
CRs-Fixed: 3275285
2023-01-09 05:21:52 -08:00
Madan Koyyalamudi
18cdf519d8 Release 2.0.8.32A
Release 2.0.8.32A

Change-Id: I5cea00273a72e3f3f2d77aea33db0aaadc52bed8
CRs-Fixed: 774533
2023-01-09 01:10:34 -08:00
Divyajyothi Goparaju
e07f7f3ccb qcacld-3.0: Avoid illegal memory access
Currently In os_if_monitor_mode_configure API,
tb attribute is getting accessed before parsing
the data coming from userspace.
This is leading to illegal memory access.

Move tb attribute access after parsing userspace
data with API wlan_cfg80211_nla_parse.

Change-Id: Ia972ebb87e18ed82c6c3a2ff3ce2d10a4b9685b9
CRs-Fixed: 3241952
2023-01-09 01:10:33 -08:00
Madan Koyyalamudi
48d9d51bfa Release 2.0.8.32
Release 2.0.8.32

Change-Id: Ic97db5893ef463e3f97903bfa244b0801e28e224
CRs-Fixed: 774533
2023-01-03 23:31:23 -08:00
Surya Prakash Sivaraj
df4878edf3 qcacld-3.0: Add debugs for max allowed tx power
Max tx power limit is received as part of the
WMI_VDEV_START_RESP_EVENTID. Add debugs to print the
max_allowed_tx_power in host.

Change-Id: I4ca0d4a4a2a1e452b8a6a9f1c48ad52fcd2f6213
CRs-Fixed: 3167045
2022-12-28 17:09:21 +05:30
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