Commit graph

22,849 commits

Author SHA1 Message Date
Ashish
4d3c4bced3 qcacld-3.0: Update ccfs2 in ht operation
Currently driver does not update ccfs2 correctly in ht operation
when it caches the connetion info, because of this userspace
is not able to get correct bw info for sta big data.

To address above issue, update ccfs2 corrrectly in ht operation.

Change-Id: I13dc8b674d24be7435a85b91a1ecc43e0c37900b
CRs-Fixed: 3183162
2022-05-04 15:25:21 -07:00
Mohit Khanna
40f3168fd1 qcacld-3.0: Force "IDLE" level on BW timer stop
Bus bandwidth timer tweaks certain aspects of the system during
throughput transitions. For example, when throughput goes high, system
parameters are tweaked in favor of system performance. Hence, when high
performance is not needed, the timer relies on throughput transitioning
to low to reset the parameters in favor of power.

During a corner case, its possible that while througput is high, wlan
adapter is immediately brought down. This stops the bus bandwidth timer
abruptly without letting the the timer detect a throughput transition to
low. This may result in higher power consumption even when there is no
data activity or throughput is low.

Explicilty force a transition to "IDLE" state when bus bandwidth timer
is stopped.

Change-Id: I0a0a64a855714b1a8b5a52a048604fef54a0ee41
CRs-Fixed: 3087118
2022-05-04 15:25:15 -07:00
Madan Koyyalamudi
77d79982be Release 2.0.8.29L
Release 2.0.8.29L

Change-Id: Ia4fd31810624d5e411abf59b71f0941803c0da2e
CRs-Fixed: 774533
2022-05-04 00:48:16 -07:00
Prakash Manjunathappa
dd8fef0fb1 qcacld-3.0: init/deinit tx_rx_histogram along with hdd_bus_bandwidth
hdd_txrx_hist histogram is accessed in hdd_pld_request_bus_bandwidth.
init/deinit tx_rx_histogram along with init/deinit of hdd_bus_bandwidth
Without this in FTM mode where hdd_txrx_hist memeber is accessed without
allocating memory for it. This results in uninitialized NULL dereference
assert

Change-Id: I3b8d80b71f4c37da4a0dafc4a7b91f8ca16bbab3
CRs-Fixed: 3110416
2022-05-04 00:48:14 -07:00
Madan Koyyalamudi
cc6aa888fb Release 2.0.8.29K
Release 2.0.8.29K

Change-Id: Iacc1d181bf74554fc27e907f76e8a1a8b3255d12
CRs-Fixed: 774533
2022-05-02 15:03:40 -07:00
Vulupala Shashank Reddy
fa214c471c qcacld-3.0: Send correct Nth beacon config to FW in pkt capture
Currently, when user sets pkt capture beacon capture config
using vendor command, both nth beacon interval and connect
beacon config is sent to firmware. This leads to reception
of all beacons even if nth beacon interval is configured.

Whenever nth beacon interval and connect beacon is configured
from user, firmware expects host to not send connect beacon
config to FW. This change also adds Nth beacon filter check
for beacons in packet capture management rx path.

Change-Id: I046a282c5f79598b686c4fd95554e2330c6bfb39
CRs-Fixed: 3150806
2022-05-02 15:03:39 -07:00
Madan Koyyalamudi
734ad7f108 Release 2.0.8.29J
Release 2.0.8.29J

Change-Id: I6e231211b0784856f6ee76278aaa05fec0eb4c2b
CRs-Fixed: 774533
2022-05-02 12:39:16 -07:00
Srikanth Marepalli
f80f0ae2e9 qcacld-3.0: Makefile change to generate driver name as qca_cld3_wlan
Currently, on Wear HL based target with keystone kernel, it
generates WLAN driver with name "wlan.ko". And to enable WIFI
every time it has to rename wlan.ko with qca_cld3_wlan.ko.
This commits generates the WLAN driver (WLAN_CHIPSET_wlan.ko)
based on Macro defined i.e. WLAN_CHIPSET else generate wlan.ko.

Change-Id: I9b278ba74052f1a333ed59d0b048d5a0611db076
CRs-Fixed: 3125247
2022-05-02 12:39:15 -07:00
Madan Koyyalamudi
d6109f2e0f Release 2.0.8.29I
Release 2.0.8.29I

Change-Id: Idde04865f4abbf155e49640ae74e12ac93d061e8
CRs-Fixed: 774533
2022-05-02 05:14:10 -07:00
Aravind Kishore Sukla
86066439ad qcacld-3.0: Send the correct SAE authentication failure reason code
Currently driver fills the reason code as
STATUS_UNSPECIFIED_FAILURE when sae authentication frame is
received or sent with failure status code.
So while processing SAE auth frame sent by AP, the DUT STA reports as
“Wrong password” instead of “Auth error” in the user interface.

Parse the status field for SAE Auth frames received from the
external authentication status command. This should be passed to the
userspace as part of connect failure indication

Change-Id: I9061cef6ac73a74021901dfa056551f51033de0c
CRs-Fixed: 3182981
2022-05-02 05:14:09 -07:00
Madan Koyyalamudi
461aac9d56 Release 2.0.8.29H
Release 2.0.8.29H

Change-Id: Ie6f993c752476760d7bfb71c19af7891dcbb9e1d
CRs-Fixed: 774533
2022-05-02 02:02:47 -07:00
Vulupala Shashank Reddy
8c180170ab qcacld-3.0: Check if wma pointer is NULL
In wma_is_roam_in_progress function, return false if wma pointer
returned from cds_get_context is NULL.

Change-Id: I0a3447f038a45ea93e769142cb5883a3f39c0991
CRs-Fixed: 2475071
2022-05-02 02:02:47 -07:00
Madan Koyyalamudi
673801d2ea Release 2.0.8.29G
Release 2.0.8.29G

Change-Id: Iad1a721d86a6a85bdd15e69fa46513775cdf2502
CRs-Fixed: 774533
2022-05-01 23:42:50 -07:00
Mohit Khanna
96489af9ec qcacld-3.0: Account for sched delay in TX/RX BW tuning
Currently sched-delay is not taken into account while calculating TX/RX
offload packets in bus bandwidth work handler. This may result in an
incorrect calculation and determination of TX/RX bandwidth levels and
other params which are derived from it.

Add support to consider actual scheduling delay between two bandwidth
intervals to detemine TX/RX offloaded/not-offloaded packets.

Change-Id: Icfb961cbbc1a049df0133394883755418b631056
CRs-Fixed: 3079953
2022-05-01 23:42:49 -07:00
Madan Koyyalamudi
33ef2bfafb Release 2.0.8.29F
Release 2.0.8.29F

Change-Id: Ib6e67ae2d32139fbb74f307c631584b9ecb2dbbc
CRs-Fixed: 774533
2022-05-01 11:15:44 -07:00
Srinivas Dasari
27cb515795 qcacld-3.0: Use hdd_for_each_sta_ref_safe API for connection status
When a NAN request(NAN enable/disable/any generic) is received
from userspace, host driver checks if any connection(STA/SAP/P2P)
is in progress by iterating through adapters. The request would be
rejected if any adapter has connection_in_progress status.

But if the adapter is getting cleaned up in parallel while
iterating through the list for connection status, the iterator
callback may stuck in loop. So, use hdd_for_each_sta_ref_safe()
API to avoid stuck in loop.

Change-Id: Ic7833dcb17154003565ccbece31a490ee9f43beb
CRs-Fixed: 3183232
2022-05-01 07:27:20 -07:00
Madan Koyyalamudi
1cad4bb5ae Release 2.0.8.29E
Release 2.0.8.29E

Change-Id: Ic4d47b58cafa202367a6c0fdc896655420556485
CRs-Fixed: 774533
2022-04-29 10:26:04 -07:00
Jianmin Zhu
1881bb989e qcacld-3.0: Fix roam failed for SAP CSA concurrency
When vdev0 STA roamed to another channel, vdev1 SAP CSA for SCC
when ROAM_SYNCH_IN_PROG, will disable roam, but no RSO stop to F/W,
F/W RSO isn't disabled, but host vdev0 will enter RSO_STOPPED, host
F/W RSO state out of sync.
If vdev0 STA next roam sync come soon,  it won't be handled for host
RSO_STOPPED, neither roam sync complete nor disconnect will happen,
F/W will asert after wait roam sync complete timeout.
To fix it, Only do SAP CSA check after roam complete and RSO
reenabled, can avoid host F/W RSO state out of sync issue.

Change-Id: I77ccf30cac38f62c6ef8330c6da00364249b242e
CRs-Fixed: 3076935
2022-04-29 10:26:04 -07:00
Jianmin Zhu
dc721ec357 qcacld-3.0: Send broadcast probe rsp for 6G AP
Certificate 4.70.1_6G need verify that the following conditions are true:
a. APUT responds with a Probe Response frame with the Address 1 field
set to the broadcast address when test bed STA to send Probe Request with
SSID = as per Table 168, Address 1 = wildcard (broadcast).

Change-Id: I44581eaf251b79f47e374d8294616c554a9acf10
CRs-Fixed: 3104288
2022-04-29 10:25:58 -07:00
Madan Koyyalamudi
63c6a9744e Release 2.0.8.29D
Release 2.0.8.29D

Change-Id: I75e902811b871ff665995a4509c15eb3e1ed62d1
CRs-Fixed: 774533
2022-04-28 19:30:23 -07:00
Alan Chen
055ce2afc6 qcacld-3.0: Change PAGE_FAULT log string to PF
As requested by OEM, change PAGE_FAULT log string to PF to
not confuse it for a critical problem for OEM.

Change-Id: I4057513670b348dd772b42777b5623722eeafc45
CRs-Fixed: 3064527
2022-04-28 19:30:23 -07:00
Alan Chen
19f6ecf1c8 qcacld-3.0: Change log level of ns offload print
Change the failure to cache ns request log level from error to debug.

Change-Id: Idc5799f41d831c238efd6061e1363a9fd58b63c5
CRs-Fixed: 3037768
2022-04-28 19:30:14 -07:00
Madan Koyyalamudi
45217a6234 Release 2.0.8.29C
Release 2.0.8.29C

Change-Id: I161266e2c849bd3be8dda8c1e219f08c258ff84b
CRs-Fixed: 774533
2022-04-28 13:16:35 -07:00
Lin Bai
c42c2e7a32 qcacld-3.0: Enable RX FCS reporting
fcs_err_count member of structure station_info
introduced from kernel 4.20.
Enable it accordingly from 4.20.

Change-Id: Ic373cb4f95a9698c8ef25c829f39bd21cd8f4a26
CRs-Fixed: 3183697
2022-04-27 05:16:26 -07:00
Madan Koyyalamudi
d4ed34e13b Release 2.0.8.29B
Release 2.0.8.29B

Change-Id: I52d7413660026c50dc7a0c657e3c500b62cbebda
CRs-Fixed: 774533
2022-04-26 16:15:25 -07:00
Jia Ding
c155eb2449 qcacld-3.0: Save mac_id and mac_id_valid in TSF report
To support uplink delay calculation, FW will report mac_id and
mac_id_valid in TSF report so as to differentiate from legacy
TSF report. Thus save mac_id and mac_id_valid fields in TSF
report so that host can differentiate the TSF report purposes.

Change-Id: If76fd49ff9693a7733389d184a84360c0564216e
CRs-Fixed: 2991959
2022-04-26 16:15:24 -07:00
Jia Ding
4357b0a1c6 qcacld-3.0: Add uplink delay in get_sta_info response
Add uplink delay value into get_sta_info vendor command response.

Change-Id: I7298fa259e0f997b28c8a114e7fd963f311596d6
CRs-Fixed: 2991981
2022-04-26 16:15:19 -07:00
Madan Koyyalamudi
eeafb2e01d Release 2.0.8.29A
Release 2.0.8.29A

Change-Id: I3ccb953524bd743e6a9b82f18b2768c364c1fb9b
CRs-Fixed: 774533
2022-04-26 13:05:16 -07:00
Jia Ding
faeabf9b03 qcacld-3.0: Enable uplink delay feature for WCN6750
Enable uplink delay feature for WCN6750 chipset.

Change-Id: Ie37172a0b845529fc4b82c9812a84077d6d4a282
CRs-Fixed: 3180279
2022-04-26 13:05:15 -07:00
Jia Ding
801b2e559c qcacld-3.0: Handle uplink delay TSF commands
Uplink delay TSF commands include TSF auto report enable, disable and
TSF uplink delay get. Auto report enable, disable commands controls
if targets will report clock delta to host. Uplink delay get command
will return the calculated uplink delay value to user space.

Change-Id: Ib01379074ab5565a9480348dc84531024e766b5a
CRs-Fixed: 2958814
2022-04-26 13:05:07 -07:00
Jia Ding
2131be6380 qcacld-3.0: Configure TSF auto report to target
As part of uplink delay report feature, send WMI cmd to
enable and disable target automatically sending TSF report
to HOST on a per vdev basis.

Change-Id: I79ef5bff5b91aca311ef16d7207e9dd2fb7ae0f2
CRs-Fixed: 2991975
2022-04-26 13:05:02 -07:00
Madan Koyyalamudi
f9aa149d1c Release 2.0.8.29
Release 2.0.8.29

Change-Id: I6470e4342f5f5445cf62804d23dab37bf9b2d9b5
CRs-Fixed: 774533
2022-04-26 10:39:56 -07:00
Jia Ding
e3bfec065b qcacld-3.0: Add chload param in LL radio stats event
chload is to indicate channel load condition and it is added
in LL radio stats vendor event.

Change-Id: I9371bf69f69ed62cc9dc97b6b2903e631b748ed4
CRs-Fixed: 2990982
2022-04-26 11:10:53 +08:00
Madan Koyyalamudi
8d7ac7ecf0 Release 2.0.8.28Z
Release 2.0.8.28Z

Change-Id: I06bd282bd74adfd38caffa88ed027ea0a02ce092
CRs-Fixed: 774533
2022-04-25 07:56:26 -07:00
Liangwei Dong
643fed7c0c qcacld-3.0: Init 5G SAP mandatory list with 2G+5G band
When SAP starts on 5G, initialize SAP mandatory list with
2G and 5G mandatory list. And also select same band channel
SCC channel firstly in the intersection of PCL and mandatory
channel list.

Change-Id: Iac86b5caf38bf72f143be81122f8378fc61b29e2
CRs-Fixed: 3039268
2022-04-25 07:56:26 -07:00
Madan Koyyalamudi
a519136e99 Release 2.0.8.28Y
Release 2.0.8.28Y

Change-Id: I61398093fd6ef36bc133693461e62cb16f31bf08
CRs-Fixed: 774533
2022-04-25 04:39:20 -07:00
Liangwei Dong
f5958f401b qcacld-3.0: Fix unnecessary log of sme_roaming_in_progress
During enumeration all adapters, if adapter is not "up",
it is unnecessary to check connecting or not. Otherwise,
the vdev is not created for the adapter and the
sme_roaming_in_progress will output "ROAM: incorrect vdev ID"
error message.

Change-Id: I3df5379a7d0b88c439d49711c36000717c7a433b
CRs-Fixed: 3002674
2022-04-25 04:39:20 -07:00
Madan Koyyalamudi
46688f9276 Release 2.0.8.28X
Release 2.0.8.28X

Change-Id: Ia95eca9e90715724b8feefe08e586983bafca9f5
CRs-Fixed: 774533
2022-04-20 23:05:18 -07:00
Jingxiang Ge
10502c75e2 qcacld-3.0: Change ce desc history from dynamic to static
As dynamic allocation occupy cnss prealloc memory, which may
cause this prealloc pool to be exhausted.

Move dynamic memory to static.

Change-Id: Ib05c044f8c0c805148d832f54c09915ef9b4c98b
CRs-Fixed: 3174282
2022-04-20 17:50:42 -07:00
Madan Koyyalamudi
c366352455 Release 2.0.8.28W
Release 2.0.8.28W

Change-Id: I18772d2fed0cf62bb3eb1da1210fa05a8719a2bb
CRs-Fixed: 774533
2022-04-20 15:44:55 -07:00
David Oladunjoye
eb2d3f6315 qcacld-3.0: Add certain OUIs into FW triggered TWT WAR list
TWT is not disabled for certain APs. Add OUIs of the
APs to configuration file.

Change-Id: I3bb2238550294b443f166920069a14fb81e6873d
CRs-Fixed: 3176212
2022-04-20 15:44:55 -07:00
Madan Koyyalamudi
2b9f40c5f2 Release 2.0.8.28V
Release 2.0.8.28V

Change-Id: I63d5edefcefaa77237eb42a090c2cfb51eebe0e7
CRs-Fixed: 774533
2022-04-20 09:50:40 -07:00
Balaji Pothunoori
afff1c08cf qcacld-3.0: Add support for FT over DS
Add support to enable the "FT over DS" via
QCA_WLAN_VENDOR_ATTR_CONFIG_FT_OVER_DS vendor config
command.
This configuration helps the firmware to support
“FT over DS” instead of “FT over Air”

Change-Id: I493bf15f83bc39135aaeefa9d8ef328f0fc0cda3
CRs-Fixed: 2968680
2022-04-20 09:50:40 -07:00
Madan Koyyalamudi
fc7c43b36e Release 2.0.8.28U
Release 2.0.8.28U

Change-Id: I3579a927ffbfd58714d3dd62d5918c3f869a9696
CRs-Fixed: 774533
2022-04-20 07:16:50 -07:00
Yu Tian
5f1358deb6 qcacld-3.0: use more accurate tx/rx packets statistics
Sometimes TX/RX pkt statistics workqueue may be delayed.
The workqueue interval value is pre-defined and is used
for bandwidth vote. If the interval is inaccurate, whole
pkts statistics are not accurate, bus bandwidth vote is
wrong also. This change is aimed to use absolute workqueue
time delay instead of pre-defined value to get accurate
packets per milliseconds result.

Change-Id: I2b730fc36d4b5c42742ed9107d9a7e1f95eb4988
CRs-Fixed: 2976857
2022-04-20 07:16:50 -07:00
Madan Koyyalamudi
7210f98c03 Release 2.0.8.28T
Release 2.0.8.28T

Change-Id: I238b6dc06e58e1fd240a1e1dbe4e032097ba00c7
CRs-Fixed: 774533
2022-04-20 03:32:46 -07:00
Ashish Kumar Dhanotiya
87ba364a2c qcacld-3.0: Do not free radio stats memory from wma
Currently driver frees the radio stats memory from wma
in error cases, there is a possibility that if hdd gets
time out for the stats request, it tries to free the radio
stats memory and at the same time if wma receives invalid
stats from fw in that case wma also tries to free the radio
stats memory which may lead to double free.

To aoid above issue, do not free the radio stats memory from
wma, in error cases hdd will free this memory after it gets
time out.

Change-Id: I6f6073a1a8e0be1b87efce288b7567e8fc8d69b0
CRs-Fixed: 3013842
2022-04-20 03:32:46 -07:00
Utkarsh Bhatnagar
1e937d5c37 qcacld-3.0: Correct the condition to reject TDLS
Reject any incoming get_all_peers TDLS command if there
are any currently in progress.
The later commands will only be processed once the earlier
commands finish, since they are processed sequentially.
However, once a command finishes, the memory allocated for
it from userspace is freed up. Each command is passed the
same address so the later commands will end up writing to
a freed address. To avoid this, reject incoming requests
if there are any still in progress.
For this, the condition should be corrected.
We shouldn't use completion_done here for checking for
completion as this will always return false, as
tdls_user_cmd_comp.done will remain in init state always.
So, the very first command will also not work.
In general completion_done is used to check if there are
multiple threads waiting on the complete event that's
why it will return true only when tdls_user_cmd_comp.done
is set with complete().
Also, if the state is in wait_for_completion, this function
will return true after the wait timer is over or condition
is met as wait_for_completion will hold out the hold lock
and will will prevent completion_done from returning.
Better to use a flag to determine command condition.

Change-Id: I1b6b270dbb9b0b103f10e7ae22a60030ea2fbb98
CRs-Fixed: 3162184
2022-04-18 01:55:08 -07:00
Madan Koyyalamudi
705e9a43d7 Release 2.0.8.28S
Release 2.0.8.28S

Change-Id: I005760f056471867df38a48a8b8527d253c4a9cf
CRs-Fixed: 774533
2022-04-14 04:16:08 -07:00
Ananya Gupta
6c7d2c9671 qcacld-3.0: Enable global IPA struct if enabled in pld and ini
Enable global IPA structure, g_ipa_config only if it is
enabled in both platform driver and ini file.

Change-Id: I1bd4e03eadf420f736bb91478b0f2e04bcd60ebd
CRs-Fixed: 3148820
2022-04-14 04:16:08 -07:00