Commit graph

22,046 commits

Author SHA1 Message Date
Karthik Kantamneni
13833d2d6e qcacld-3.0: Set ep vote access states during suspend and resume
Set ep vote states during wlan suspend and resume opeartions

Change-Id: I5da5fb69ca99ac1d9ecd82cc61cc106eeba8eb47
CRs-Fixed: 2939902
2021-05-12 11:01:06 -07:00
Madan Koyyalamudi
cb7b7e864f Release 2.0.8.16S
Release 2.0.8.16S

Change-Id: Ic9a42a5651b59db3272cb04c68c06b5112101307
CRs-Fixed: 774533
2021-05-11 21:05:36 -07:00
Vevek Venkatesan
57efb9edae qcacld-3.0: enable BW_MONITOR support for moselle
Enable WDI3_STATS_BW_MONITOR support for moselle
platforms.

Change-Id: I09fc851548f584f7b67824de523df8dd3ece90eb
CRs-Fixed: 2941935
2021-05-11 21:05:36 -07:00
Liangwei Dong
422c1e3376 qcacld-3.0: Fix LTE unsafe channel switching failure of SAP
At present LTE unsafe channel switch and DCS is using
hdd_switch_sap_channel to switch channel of SAP.
hdd_switch_sap_channel has no bw setting parameters and just
use the original bw of SAP - ch_width_orig. The ch_width_orig
(80Mhz) may not be applicable if SAP is channel switching from
5G 80Mhz to 2G. Use the new API wlan_get_ap_prefer_conc_ch_params
to override the bw to appropriate value for the new channel.

Change-Id: I9ab6c92a0534517c524bd56b0c3087d7f75f6368
CRs-Fixed: 2939654
2021-05-11 21:05:31 -07:00
Liangwei Dong
7a2141ed51 qcacld-3.0: Refine SAP force SCC target channel bandwdith selection
Merge the bandwidth selection of the two API
wlansap_get_csa_chanwidth_from_phymode &
wlan_sap_get_concurrent.
Update 5G Force SCC target Max BW selection for dbs hw:
1. Max BW 80Mhz if sta_sap_scc_on_dfs_chan = 1 and Single SAP
2. Max BW 80Mhz if sta_sap_scc_on_dfs_chan = 0 and STA+SAP SCC
3. other case use User configured BW

The above Max BW value will be limited by SAP user configured
BW at the end.

Change-Id: I1b165d1411288ca6845f90103adbf8bbfc34f67d
CRs-Fixed: 2925750
2021-05-11 21:05:27 -07:00
Madan Koyyalamudi
52df69ea67 Release 2.0.8.16R
Release 2.0.8.16R

Change-Id: I3ec70d307e3421427bcfddf8d6d54b7a63cfe008
CRs-Fixed: 774533
2021-05-11 19:08:52 -07:00
sheenam monga
a163b0b0c4 qcacld-3.0: Add log to check igmp offload support
Currently, there is no log to differentiate whether
igmp offload is not supported by fw or ini is disabled.

Add log to check the ini support of igmp offload and
fw capability to handle igmp request.

Change-Id: I22f6f9f1d11da5e03aa8d3c7869b81fc1acc51d7
CRs-Fixed: 2936131
2021-05-11 19:08:51 -07:00
Yu Tian
c2dd0ca266 qcacld-3.0: Set HIF PM link state on in RTPM suspend failure flow
HIF PM link state is used to indicate bus is alive or not. This
indicates RING HP/TP updating directly or using async method.In
RTPM suspend failure flow, CLD reject RTPM suspent request, but
state is not resumed correctly.

Change-Id: I3b96dc1fb34e2810d721e1fcb4db609a3d1d684d
CRs-Fixed: 2919930
2021-05-11 19:08:47 -07:00
Sachin Ahuja
a30ed56c32 qcacld-3.0: Flush the idle shutdown before the dsc op start
Currently idle shutdown is flushed after the suspend dsc op
start. This can lead to the deadlock when the idle shutdown
work is running as it waits for the dsc ops to complete.

To mitigate this issue, flush the idle shutdown work before
starting the dsc ops in suspend sequence.

CRs-Fixed: 2941314
Change-Id: I023b9eb3543d83a30e0587cec3977e08ac7ab752
2021-05-11 19:08:41 -07:00
Madan Koyyalamudi
bdb9bdc719 Release 2.0.8.16Q
Release 2.0.8.16Q

Change-Id: I393e7eb79442905e70185df5e203c60bf5dc27b7
CRs-Fixed: 774533
2021-05-11 10:01:20 -07:00
Utkarsh Bhatnagar
4f06ebfb48 qcacld-3.0: Set ldpc for more than 20 Mhz TDLS link
If ldpc bit is not set in case AP width more than
20 Mhz, it may cause crash.
So, force set LDPC coding in such cases.

Also, force set LDPC if peer supports MCS 10 and 11.

Change-Id: I14bb4b56d0efb660ad19587b319badfac9083f21
CRs-Fixed: 2915086
2021-05-11 10:01:19 -07:00
Madan Koyyalamudi
7ea8440b1d Release 2.0.8.16P
Release 2.0.8.16P

Change-Id: I33c1cf50f56b46bbcb31b3c930b5ccf0a40edbe0
CRs-Fixed: 774533
2021-05-10 23:23:17 -07:00
Karthik Kantamneni
755e7f3cea qcacld-3.0: Enable TX HW descriptor history support
Enable TX HW descriptor history support for Lithium targets.

Change-Id: I84c079cb28f0e320de5378291a21263b8417372f
CRs-Fixed: 2934910
2021-05-10 23:23:17 -07:00
Lincoln Tran
720c77c8c1 qcacld-3.0: Send band correct TX BF caps
In 6G 160Mhz case, beamforming values are not being sent correctly
because the HE capability is populated from the minimum between bands.
Since FW is advertising the 2G capabilities as a lower value, these are
taking effect. Update these values from the correct band.

Change-Id: I0a0bc14860487f104e7b872894f1eb939c06a613
CRs-fixed: 2939702
2021-05-10 23:23:13 -07:00
sheenam monga
7842cc70fb qcacld-3.0: Validate channel list count before updting acs channel range
Currently, do_acs may invoke wlan_hdd_set_acs_ch_range with
channel list count is 0. In case of SAP+SAP turned on non-dbs
hardware, Intersection of supported frequencies may become
zero and channel list count will become zero. while handling
0 channel list count in wlan_hdd_handle_zero_acs_list, if sta
count is 0 then channel list will not be updated to 1 which may
cause OOB issue while updating acs channel range.

Fix is to validate channel list count before populating acs
channel list.

Change-Id: Iffbe139748e76cd692e774e5f9db2c1c3d086332
CRs-Fixed: 2922790
2021-05-10 23:23:09 -07:00
Pragaspathi Thilagaraj
f28d06bb69 qcacld-3.0: Send update pmk cmd only if set/del pmksa is successful
The WMI_PDEV_UPDATE_PMK_CACHE_CMDID command is sent even if the
delete/set pmksa command fails due to same entry with same pmk
already exists. This can cause invalid pmk
entries to be updated in the Fw pmk table and also the host/fw
pmksa table goes out of sync.

To avoid this, send the WMI_PDEV_UPDATE_PMK_CACHE_CMDID command
only if set pmksa/del pmksa is successful at crypto

Change-Id: I080ebd9f6ca11bac216e6e8c62ef6060f0adef67
CRs-Fixed: 2937175
2021-05-10 23:23:05 -07:00
Pragaspathi Thilagaraj
ee3eefe395 qcacld-3.0: Fill default CFR NSS/BW values during start capture
Currently if the userspace doesnt send the NSS/BW values, then
the filter_set_valid_mask flag is not set in the
WMI_CFR_CAPTURE_FILTER_CMDID command. So the target doesnt
configure the BW and NSS filter in HW leading to frames getting
filtered out.

Fill default CFR capture NSS and BW values during start
capture.

Change-Id: I46004aa38c09dec8995fff84a3e699581675221b
CRs-Fixed: 2932529
2021-05-10 23:23:01 -07:00
Madan Koyyalamudi
103780be5c Release 2.0.8.16O
Release 2.0.8.16O

Change-Id: I820b2306fbafb6f392fc8314ecd3018c569b2b29
CRs-Fixed: 774533
2021-05-09 23:36:59 -07:00
Vevek Venkatesan
be279c8d1f qcacld-3.0: enable Tx descriptor history in Tx and comp rings
Enable the history support to log Tx descriptors programmed
in Tx and completion HW rings.

Change-Id: I5ce308354714da78baa05500bc73e1a9ec91b958
CRs-Fixed: 2935363
2021-05-09 23:36:58 -07:00
Vevek Venkatesan
3a221ef96a qcacld-3.0: add Tx desc history in non-critical prealloc memory
Add the Tx desc history buffers into non-critical category of
prealloc memory.

Change-Id: I9e9b466a8e836cbc02ff7754e545b99b984cb02d
CRs-Fixed: 2936445
2021-05-08 00:28:57 +05:30
Madan Koyyalamudi
9411364649 Release 2.0.8.16N
Release 2.0.8.16N

Change-Id: I00acf8bbc398ad8507e8d65ac3ac2d2d437a6735
CRs-Fixed: 774533
2021-05-06 18:08:56 -07:00
Karthik Kantamneni
cf0dfc4091 qcacld-3.0: Add TX HW desc history in pre alloc memory
Add TX HW descriptor history in pre alloc memory

Change-Id: I0a2756d7955bed04680d8d735c750012354b6ff7
CRs-Fixed: 2937355
2021-05-06 20:00:28 +05:30
Madan Koyyalamudi
a73416f6c6 Release 2.0.8.16M
Release 2.0.8.16M

Change-Id: I354971041044a6eba4bc4b01c82e987223e4d9af
CRs-Fixed: 774533
2021-05-06 03:03:59 -07:00
abhinav kumar
45603527e7 qcacld-3.0: Update pmk cache entry for roamed AP
qcacld-3.0: Update pmk cache entry for roamed AP

Consider two APs: AP1, AP2
Both APs configured with EAP 802.1x security mode
and OKC is enabled in both APs by default. Initially
DUT successfully associated with AP1, and generated
PMK1 by performing full EAP and added an entry for AP1
in pmk table. At this stage, pmk table has only one
entry for PMK1 (1. AP1-->PMK1).

Now DUT roams to AP2 using PMK1 (as OKC is enabled)
but session timeout happens on AP2 just before 4 way
handshake completion in FW. At this point of time DUT not
in authenticated state. Due to this DUT performs full EAP
with AP2 and generates PMK2. As there is no previous
entry of AP2 (AP2-->PMK1) in pmk table. When host gets
pmk delete command for BSSID of AP2, the BSSID match
fails. Hence host will not delete pmk entry of AP1 as well.

At this point of time, the PMK table has two entry
1. AP1-->PMK1 and 2. AP2 --> PMK2.

Ideally, if OKC is enabled then whenever timeout occurs in
a mobility domain, then the driver should clear all APs
cache entries related to that domain but as the BSSID
doesn't exist yet in the driver cache there is no way of
clearing the cache entries, without disturbing the legacy
roaming. Now security profile for both APs changed to FT-RSN.
DUT first disassociate with AP2 and successfully associated
with AP2 and perform full EAP and generates PMK3. DUT first
deletes PMK entry for AP2 and then adds a new entry for AP2.

At this point of time pmk table has two entry AP2--> PMK3
and AP1-->PMK1. Now DUT roamed to AP1 using
PMK3 but sends stale entry of AP1 (PMK1) to fw via RSO
command. This override PMK for both APs with PMK1
(as FW uses mlme session PMK for both APs in case of FT
roaming) and next time when FW try to roam to AP2 using
PMK1, AP2 rejects PMK1 (As AP2 is expecting PMK3) and
initiates full EAP with AP2, which is wrong.

Fix is to update pmk table entry for roamed AP1 with PMK3 value
comes to host via roam sync indication event.. By this host
override stale entry (if any) with the latest valid pmk for
that AP at a point of time.

Also add new api to get the sae single pmk ini value and
update the bss desc of single_pmk cap after intersecting the ini
value.

Change-Id: I12fecbae69d0d2a11f2a39eee6be960752d831bd
CRs-Fixed: 2889847
2021-05-06 03:03:59 -07:00
Gururaj Pandurangi
527074d526 qcacld-3.0: Fix Link tx power updation for RRM
Update Link tx power with TPC power calculated in lim_calculate_tpc
everytime a radio measurement request is received.

Change-Id: Ie564fd13b071f0265c2a5c80088d5550e07395b3
CRs-Fixed: 2938684
2021-05-06 03:03:55 -07:00
Vulupala Shashank Reddy
c4e3177ed0 qcacld-3.0: Fix data rate in mgmt rx packets in packet capture mode
Currently the rate, ofdm and cck flags are filled to support only
legacy rates.To support other rates too, fill ofdm and cck flags
based on phymode and fill rate in terms of 500 Kbps in tx status.

Change-Id: I972919ebd2cbd19a1b55af0324e481fada7f12cd
CRs-Fixed: 2917079
2021-05-06 03:03:51 -07:00
Madan Koyyalamudi
b558baa733 Release 2.0.8.16L
Release 2.0.8.16L

Change-Id: If73f105d1d17b19249186609a170e6277db3177b
CRs-Fixed: 774533
2021-05-06 01:12:00 -07:00
Vulupala Shashank Reddy
6b57dc6b17 qcacld-3.0: Refactor the code related to packet capture header
Refactor the code to replace htt tx data header with packet capture
header. So that we can add extra parameters in packet capture
header to send required data to packet capture callback function.

Change-Id: I863c63b925d1cd8ba5a8a7f0bc08ee3cd2acb96b
CRs-Fixed: 2916795
2021-05-06 01:12:00 -07:00
Vulupala Shashank Reddy
8bfe204c4a qcacld-3.0: Fill timestamp for Mgmt tx packets for packet capture
Currently in packet capture mode for tx mgmt packets tsf_delta
filled in tsf timeestamp, which is incorrect.

So, fill tsf timestamp in Mgmt tx packets for packet capture.

Change-Id: I90da072ee6d7e0f7a9b6271086e163a71208b7f5
CRs-Fixed: 2916982
2021-05-06 01:11:55 -07:00
Vulupala Shashank Reddy
5e6bc10b53 qcacld-3.0: Fill timestamp for packet capture rx data packets
For rx data packets in packet capture mode fill timestamp
from msdu start.

Change-Id: Iebbdcf303e67369f855d5cf3514df0e03e38dedd
CRs-Fixed: 2917013
2021-05-06 01:11:46 -07:00
Madan Koyyalamudi
c11ed3024d Release 2.0.8.16K
Release 2.0.8.16K

Change-Id: Id59f62d89139e0dc520dcfefa935282bea6c7a99
CRs-Fixed: 774533
2021-05-05 16:21:55 -07:00
Lincoln Tran
4d1dd6e78c qcacld-3.0: Add path to skip TPE IE in TX power calc
When calculating the TX power, add a path to not consider the TPE IE
values in case of 2G/5G bands. If device is operating in 6G band,
include the TPE IE regardless of INI configuration.

Change-Id: If829318319e9b799c75a59ce3beed39bae5bffa2
CRs-fixed: 2936487
2021-05-05 16:21:55 -07:00
Lincoln Tran
64dfa5b5a9 qcacld-3.0: Add INI to not consider TPE IE
Sometimes, the AP sends low values in the TPE IE resulting in low TX
power. This causes DUT to have throughput/connection issues. Add an INI
to skip over TPE IE only in 2g/5g case. TPE IE will always be considered
in 6G band.

Change-Id: Ia0750195bb0aabf304743e1ad89c8f6d0c9ef1a3
CRs-fixed: 2936492
2021-05-05 16:21:49 -07:00
Madan Koyyalamudi
86ed12b640 Release 2.0.8.16J
Release 2.0.8.16J

Change-Id: I7282af4bbd728935d143ad76a9f92f07cede0e61
CRs-Fixed: 774533
2021-05-05 14:34:19 -07:00
Pragaspathi Thilagaraj
5906816563 qcacld-3.0: Increment peer count in LFR-2.0 roaming case
In LFR-2.0 roaming case, wma_add_peer() is called which
sends the peer create command to firmware, but in the
caller peer count is not incremented in success case.
This leads to peer deletion failure during disconnection.

Increment peer count in LFR-2.0 roaming case.

Change-Id: I0b17217615e104fe93f622555f04c6a85e279d6d
CRs-Fixed: 2929615
2021-05-05 18:40:20 +05:30
Pragaspathi Thilagaraj
23e7bc4a65 qcacld-3.0: Fix sending vdev start again during LFR-2.0 roaming
Currently peer create response support is added for connect path
but in LFR-2.0 case also peer create response received is
processed and lim_post_join_set_link_state_callback() is called
leading to sending vdev start again.
Call the API to fill peer create wma request only for initial
connection.

Change-Id: I24140efd5541f7ed4aa3cef9efebf5a729846902
CRs-Fixed: 2856636
2021-05-05 03:03:14 -07:00
Madan Koyyalamudi
00497f1f3c Release 2.0.8.16I
Release 2.0.8.16I

Change-Id: Ie9548b9798d393ee9132564569ae2bdabb50acd3
CRs-Fixed: 774533
2021-05-05 01:00:08 -07:00
Yeshwanth Sriram Guntuka
32ed81c857 qcacld-3.0: Mark rx/fisa history prealloc as non-critical
Mark rx and fisa history related allocations as non
critical for prealloc. This will ensure that prealloc
init can continue when memory alloc fails for the above
as these are only for debug purposes.

Change-Id: I94fc5c35a3a7a5dae3a4c97cf4ceca4eee7372ca
CRs-Fixed: 2936359
2021-05-05 01:00:07 -07:00
Madan Koyyalamudi
09238d6d51 Release 2.0.8.16H
Release 2.0.8.16H

Change-Id: I4ff6a54cbc3f8c92b0439a78fa7bf7a651c5cb35
CRs-Fixed: 774533
2021-05-04 23:23:37 -07:00
Gururaj Pandurangi
a3d0935690 qcacld-3.0: Update Link tx power for RRM scenario
Update Link tx power with TPC power calculated in lim for
RRM scenario. In the legacy case (old FW), Link tx power
was calculated using lim_get_max_tx_power where as for
new FW, we get the power value from lim_calculate_tpc.

Change-Id: Id97f0cad00572180e3436142df9cf95e6d270d12
CRs-Fixed: 2937763
2021-05-04 23:23:36 -07:00
Madan Koyyalamudi
6d7aabfc35 Release 2.0.8.16G
Release 2.0.8.16G

Change-Id: Id54277bc943055dbdfa70a4a9d75d3be92b5d220
CRs-Fixed: 774533
2021-05-04 15:41:24 -07:00
Lincoln Tran
e99d08060b qcacld-3.0: Set AP power mode back to LPI
When starting SAP, the AP power type is decided based on certain
conditions. After turning off the SAP, the power type is no longer
valid, so reset it back to default.

Change-Id: I472da2e02b58017dab4855fc83cd4e15b24b7b08
CRs-fixed: 2934622
2021-05-04 15:41:24 -07:00
Madan Koyyalamudi
f9264f6d82 Release 2.0.8.16F
Release 2.0.8.16F

Change-Id: I63ad0963f670db44f9fbe4613d16193c5b6092d4
CRs-Fixed: 774533
2021-05-04 10:53:39 -07:00
Yeshwanth Sriram Guntuka
19acf9243c qcacld-3.0: Allocate memory for fisa pkt history separately
Fisa packet history is around 6KB for each sw fisa
flow entry and this is part of the dp_fisa_rx_sw_ft
structure. The total size of the SW FT as a result is
around 830KB and the higher order memory allocation via
kzalloc for this could fail in low/fragmented memory
scenarios.

Fix is to allocate memory for FISA pkt history separately
and attach it to the SW FT entry.

Change-Id: I7296d7269c1b86ec38ea1668e8a0893335bbdb6f
CRs-Fixed: 2934487
2021-05-04 10:53:39 -07:00
Madan Koyyalamudi
f5180cdf16 Release 2.0.8.16E
Release 2.0.8.16E

Change-Id: I83944dd2336102f6becc4f8591e546c0a998f39c
CRs-Fixed: 774533
2021-05-04 05:31:26 -07:00
Karthik Kantamneni
afed3d0c36 qcacld-3.0: Add rx refill ring history to pre-alloc memory
Add entries to pre-allocate memory region for
recording datapath rx refill ring history.

Change-Id: Icbb6d59b834ea7b8957406e68be72bf3072389bf
CRs-Fixed: 2930011
2021-05-04 05:31:25 -07:00
Madan Koyyalamudi
ac7d7a71e1 Release 2.0.8.16D
Release 2.0.8.16D

Change-Id: I015415ca3e1d150c0fa4741af71fde412501406f
CRs-Fixed: 774533
2021-05-03 19:52:07 -07:00
Yu Tian
ba0f7d0b3e qcacld-3.0: revert TDLS pkt statistics changes
TDLS pkts statistics API cost 10% CPU cycle of whole RX
thread. It's optimized in another change from TDLS team to
remove excessive lock/unlock. So original change is not needed.

Change-Id: Ica1dd6bf8a94a4bef6045b07228bd547aeda3a00
CRs-Fixed: 2930306
2021-05-03 19:52:06 -07:00
Madan Koyyalamudi
345a2cee70 Release 2.0.8.16C
Release 2.0.8.16C

Change-Id: I37ebcda61168eede383bf3df82d669f99eb25d3d
CRs-Fixed: 774533
2021-05-03 15:04:30 -07:00
Gururaj Pandurangi
1b240dbf64 qcacld-3.0: Add country IE check to determine STA's power type for 6G
If STA Country Code is US and if AP Country IE has a different
county code, STA should not allow connection to this AP as VLP
mode is not implemented yet in the US.
If STA Country Code is GB and if AP Country IE has a different
county code, STA will use VLP mode.

Change-Id: I7d247ae9fc83d7b578b01ec664247c807f7834fc
CRs-Fixed: 2933632
2021-05-03 15:04:29 -07:00