Commit Graph

26627 Commits

Author SHA1 Message Date
Kiran Kumar Lokere
2c6811feb4 qcacld-3.0: Fix the 2.4 GHz band HE caps in VDEV IE data
Reset the HE capability data buffer after the 5 GHz HE capabilities
are configured to FW to fix the malformed data in 2.4 GHz HE
capability data.

Change-Id: I8147ffdae1990cf1997650f0790a27ccbb6ff1fe
CRs-Fixed: 3253505
2022-08-23 05:40:06 -07:00
Kiran Kumar Lokere
241d3dbc59 qcacld-3.0: Remove the ML IE sent in assoc request IE data
Remove the MLO IE sent in connect request association request
data to avoid duplication.

Change-Id: Icccf378c05cd9509dfbb42d68a9859c9a0bb315a
CRs-Fixed: 3259650
2022-08-23 05:40:00 -07:00
Kiran Kumar Lokere
b4a3d09a5e qcacld-3.0: Add support for testbed default EHT caps
Add support to set the EHT capabilities for testbed
default settings.

Change-Id: Ica67836e464d42adc43971456801103d088a0891
CRs-Fixed: 3256051
2022-08-23 05:39:54 -07:00
Madan Koyyalamudi
0f24946cba Release 5.2.1.33Z
Release 5.2.1.33Z

Change-Id: I5cb1cb0c1b5d5f2a3a1a44f70fd5b55ca5a84e37
CRs-Fixed: 774533
2022-08-23 02:40:39 -07:00
Srinivas Dasari
ff87b52ef4 qcacld-3.0: Don't reserve vdev for NAN in fw when NAN is disabled
When NAN is not supported on some target(disabled through ini
param gEnableNanSupport), there is no use of reserving vdev for
it in firmware though firmware advertises wmi_service_nan. Indicate
firmware that host is going to take care of the NAN vdev creation.
Host can use the vdev either for NAN or other operations
on need basis.

Change-Id: Iec106ceb80b80f03017a77036727b148845b64d5
CRs-Fixed: 3267080
2022-08-23 02:40:38 -07:00
Hong Shi
c0ff3212e9 qcacld-3.0: reschedule country change work for EAGAIN error
Sometimes country change happened when driver is loading stage.
wlan_hdd_validate_context will return EAGAIN in such case and
cause country change work aborted. Reschedule country change work
in EAGAIN case so that country change work can be done.

Change-Id: I83efb6def92a2f3c2710df02f85383ccb20e89d2
CRs-Fixed: 3252694
2022-08-23 02:40:32 -07:00
Deeksha Gupta
c9b75a7ecd qcacld-3.0: Clean up code to avoid duplication
Avoid code duplication by using common definitions
i.e use enum wlan_ml_linfo_subelementid.

Change-Id: Ib8ce8f5e84abe7a8d60ebc220610dcc60483bf81
CRs-Fixed: 3270765
2022-08-23 02:40:26 -07:00
Madan Koyyalamudi
1740531973 Release 5.2.1.33Y
Release 5.2.1.33Y

Change-Id: I094a14cde37816225241cc442bc9fb79c56f75b2
CRs-Fixed: 774533
2022-08-23 00:49:11 -07:00
abhinav kumar
4bc3ce90dd qcacld-3.0: Lock leak in function policy_mgr_is_restart_sap_required
In case of failure policy_mgr_is_restart_sap_required
returns without releasing the lock. This leads to lock leak.

Fix is to release the lock before return in case of failure.

Change-Id: I032a6902de1bd0c8f87b660aac98a2fb08dd3f10
CRs-Fixed: 3269538
2022-08-23 00:49:10 -07:00
Dundi Raviteja
ea7b73b001 qcacld-3.0: Reinitialize mon_register_event before wait_for_completion
Reinitialize mon_register_event before wait_for_completion
to make sure that it waits for fresh completion.

"done" variable in struct completion increments in
complete() API and decrements in wait_for_completion() API.

In wait_for_completion() API, if "done" value is 0 then
it will wait for the completion else it will continue without
waiting.

If reinitialization is not done, there is a possibility that
wait_for_completion() may continue without waiting.

Change-Id: I780103f551938438f27a11b006cc7c3e6edc6820
CRs-Fixed: 3251876
2022-08-23 00:49:05 -07:00
Madan Koyyalamudi
0d727db03a Release 5.2.1.33X
Release 5.2.1.33X

Change-Id: I75be705f98dfbdcbc758e2ec62686a2534ca5aae
CRs-Fixed: 774533
2022-08-22 21:36:43 -07:00
Srinivas Dasari
ce7965e1c3 qcacld-3.0: Incorrect validation of RSNXE cap bits
Currently, cap_mask contains the bitmap to check if any bits
other than SAE_H2E, SAE_PK, SECURE_LTF, SECURE_RTT,
PROT_RANGE_NEGOTIOATION are set in RSNXE capabilities.
But if the cap length is non-zero, the cap_mask wrongly indicates
that some bit is set in the capabilities other than the above
mentioned features as first 4-bits are used for length.
Skip validating the first 4-bits as these are reserved for
cap length.

Change-Id: I3736479e7c580425f8d340cb5bd815836c54d5ce
CRs-Fixed: 3270051
2022-08-22 21:36:42 -07:00
Madan Koyyalamudi
8c5c34938e Release 5.2.1.33W
Release 5.2.1.33W

Change-Id: Ib5e38b82b266f6bbb9d38ce7473b2ae3132dcc83
CRs-Fixed: 774533
2022-08-22 13:14:39 -07:00
Jeff Johnson
adc9857a94 qcacld-3.0: Fix misspelling "recevied"
Multiple instances of the misspelling "recevied" are present, so
replace them with the correct spelling "received."

Change-Id: Ie0421bc472d5c25f1fbcc5e8c9333e0283a6e129
CRs-Fixed: 3271103
2022-08-22 13:14:39 -07:00
Madan Koyyalamudi
f21436ab59 Release 5.2.1.33V
Release 5.2.1.33V

Change-Id: Ic775b6c9d4a60e679a105e36b27aef441435945b
CRs-Fixed: 774533
2022-08-22 11:30:16 -07:00
Qun Zhang
76d37c0d18 qcacld-3.0: Disallow channel switch only when sta_sap_scc_on_dfs_chnl is 1
For non-dbs HW, per INI g_sta_sap_scc_on_dfs_chan description, standalone
SAP should be allowed to do channel switch when sta_sap_scc_on_dfs_chnl
is 0 or 2.

Change-Id: I380791debed79d4de6d468afe0c8956bf6f11ddb
CRs-Fixed: 3265470
2022-08-22 11:30:16 -07:00
Madan Koyyalamudi
469ca50be8 Release 5.2.1.33U
Release 5.2.1.33U

Change-Id: I663a2dae04c1a64527596851a5dff64b387ffeec
CRs-Fixed: 774533
2022-08-22 08:30:13 -07:00
Paul Zhang
7e735530a2 qcacld-3.0: set rx_pream_puncturing per band
Currently, HE cap uses the final cap derived from 2 GHz and
5 GHz specific HE caps, then the value of rx_pream_puncturing
in HE cap may not be expected when 5 GHz is used.

To resolve this issue, set rx_pream_puncturing if 5 GHz band
is used.

Change-Id: I81cb960271dff5007606a10cab8e9c78cbae58fb
CRs-Fixed: 3267557
2022-08-22 08:30:12 -07:00
Madan Koyyalamudi
e8f85db444 Release 5.2.1.33T
Release 5.2.1.33T

Change-Id: I3c3147c9738910b2c031912cdb413431c11598e0
CRs-Fixed: 774533
2022-08-21 22:18:35 -07:00
Yu Wang
7ef2ec9750 qcacld-3.0: enable CoAP feature for kiwi_v2
Enable CoAP(Constrained Application Protocol) feature
for kiwi_v2.

Change-Id: Ib940a1135f7de69c437a276fc8c8ba3cc1a7da5b
CRs-Fixed: 3257898
2022-08-21 22:18:34 -07:00
Yu Wang
0f0d2fc927 qcacld-3.0: add build support for CoAP
Add build support for CoAP(Constrained Application Protocol)
component.

Change-Id: I1578091ddc6348398d3a0dbc1c7378deddf10712
CRs-Fixed: 3257891
2022-08-21 22:18:29 -07:00
Yu Wang
6b8d933d9e qcacld-3.0: add vendor command support for CoAP
Add support for CoAP(Constrained Application Protocol) realted
vendor command QCA_NL80211_VENDOR_SUBCMD_COAP_OFFLOAD.

Change-Id: I830379ca0dda765add5e1ddd949fd3e51dcb80e6
CRs-Fixed: 3254544
2022-08-21 22:18:24 -07:00
Yu Wang
0cf0e65f75 qcacld-3.0: implement os if layer for CoAP component
Add os if layer for CoAP(Constrained Application Protocol)
component. It provides interfaces to parse netlink messages
for vendor command QCA_NL80211_VENDOR_SUBCMD_COAP_OFFLOAD
and take action accordingly, including enable/disable offload
reply/periodic transmitting for CoAP messages, and fetching
CoAP messages those cached during offload processing.

Change-Id: Ibbf9baf3802d305f9989e024ce764a6071b1fc6b
CRs-Fixed: 3254541
2022-08-21 22:18:18 -07:00
Madan Koyyalamudi
258f752ffb Release 5.2.1.33S
Release 5.2.1.33S

Change-Id: Id7edf3a0c0c4e8bb7635a942e8d2d10626ac5e76
CRs-Fixed: 774533
2022-08-21 20:50:18 -07:00
Bing Sun
082f9da230 qcacld-3.0: Add support for WPA3 LFR2 roaming
On some projects, LFR3 roaming is not supported due to
limitation of FW memory, thus, add support for WPA3 LFR2
roaming.

Change-Id: I80888049a243c0d37e08377d89a6aa44e75a8850
CRs-Fixed: 2973554
2022-08-21 20:50:17 -07:00
Madan Koyyalamudi
c9887c1976 Release 5.2.1.33R
Release 5.2.1.33R

Change-Id: Idf83bfe217b6cd06c44b47ebd6916dc77ff4cfd1
CRs-Fixed: 774533
2022-08-21 06:38:36 -07:00
Paul Zhang
3e1ee7c2e5 qcacld-3.0: Do not generate link probe response
Currently, it DUT only supports one link,
lim_gen_link_specific_probe_rsp returns error. It causes
one link connection failure.

To resolve this issue, return success if DUT only supports
one link.

Change-Id: I9fcad7e82865ff6a4424ca74ea60f68e3a59ea21
CRs-Fixed: 3270226
2022-08-21 06:38:35 -07:00
Madan Koyyalamudi
5bc2e93d44 Release 5.2.1.33Q
Release 5.2.1.33Q

Change-Id: If22b1d723bebe6bc8b25ac2c2692d4e70e3b8b75
CRs-Fixed: 774533
2022-08-19 16:15:08 -07:00
Liangwei Dong
d547233ef3 qcacld-3.0: Enforce PCL weightage for GO/GC in 2 or 3 vif
If policy_mgr_is_concurrency_allowed is false, don't set
weighed_valid_list = WEIGHT_OF_NON_PCL_CHANNELS. Keep
WEIGHT_OF_DISALLOWED_CHANNELS for them so that the interface
won't start on disallowed channel. And in P2P+P2P or SAP+P2P
case strictly follow PCL weightage for second P2P interface.

Change-Id: I005e680e796269d3cd847b5df460506813d0d033
CRs-Fixed: 3265478
2022-08-19 16:15:08 -07:00
Madan Koyyalamudi
b3a141a81c Release 5.2.1.33P
Release 5.2.1.33P

Change-Id: I4b9e9c04586f4277944103f46a19687822432369
CRs-Fixed: 774533
2022-08-19 14:51:50 -07:00
Kiran Kumar Lokere
15d4a12f31 qcacld-3.0: Return failure response for link vdev assoc fail
Send the failure response if the association response generation
is failed for link vdev to release the connect request command.

Change-Id: I0d05347c61cfd8fea90b23c3de6f0fb1ba7752d4
CRs-Fixed: 3253510
2022-08-19 14:51:49 -07:00
Madan Koyyalamudi
3341dd8843 Release 5.2.1.33O
Release 5.2.1.33O

Change-Id: I66b96d196f2d5bf13da8483c4e8bdf69107486ec
CRs-Fixed: 774533
2022-08-19 08:14:54 -07:00
Surabhi Vishnoi
abba175dc5 qcacld-3.0: Add new scan filter if ACS scan is done partially
If the acs scan is optimized based on last scan ageout time,
it can lead to either skip ACS scan fully or scan partial
ACS frequency list. If ACS scan is skipped or partially
done, use a scan filter based on last scan ageout time to
retrieve the scan entries for ACS algorithm.

Change-Id: Id1d3a3d4364163686f92c380e9f6d6dada033ff5
CRs-Fixed: 3239389
2022-08-19 08:14:54 -07:00
Liangwei Dong
68da70f0d2 qcacld-3.0: Move GO to other band for SAP starting on 3vif conc
In GO+STA+SAP concurrency, if GO is MCC with STA, the new SAP
will not be allowed in same MAC. FW doesn't support MCC in same
MAC for 3 or more vdevs. Move GO to other band to avoid SAP
starting failed.

Change-Id: Ia19abd1b11f7416797af3e975ab8ffde9037c11f
CRs-Fixed: 3262185
2022-08-19 08:14:48 -07:00
Madan Koyyalamudi
9f2a2d298a Release 5.2.1.33N
Release 5.2.1.33N

Change-Id: If3b551c730031eb5eec2b871da5e97b5d3ccff67
CRs-Fixed: 774533
2022-08-19 06:40:32 -07:00
Arun Kumar Khandavalli
7f556d1502 qcacld-3.0: search with mld address also in wma_find_vdev_id_by_addr
Currently wma_find_vdev_id_by_addr searches for the mac address of the
vdev there are some function which pass the mld address to this
utility api which is currently returning error.

Search with mld address alo in wma_find_vdev_id_by_addr.

Change-Id: I34ef8486a406cbaadbe95e5cb493bc5b0c8d8b0c
CRs-Fixed: 3270810
2022-08-19 06:40:31 -07:00
Utkarsh Bhatnagar
6e3351f66a qcacld-3.0: Follow Ap's BW when moved from 40 MHz to 20 MHz in 2.4 GHz
For 2.4 GHz band, if AP switches its BW from 40 MHz to 20 MHz, it
changes its beacon respectivily with ch_width 20 MHz without STA
disconnection.
This will result in TDLS remaining on 40 MHz and not follwoing APs BW
on 2.4 GHz.
Better Teardown the link here and with traffic going on between peers
the tdls connection will again be restablished with the new BW

Change-Id: I7f7b3cdc7937b2d4b78df46ca970fae22efc2ead
CRs-Fixed: 3243624
2022-08-19 06:40:25 -07:00
Liangwei Dong
ba8cf63a22 qcacld-3.0: Allow SAP+P2P GO+STA SCC on same band
If SAP+P2P GO SCC on 2.4 GHz, the new STA interface will be
allowed connect to AP on 2.4 GHz SCC channel of SAP/GO or
5/6 GHz band AP. And do same for 5 GHz band.
For 3rd SAP/P2P GO coming up, try to force SCC to
existing same band SAP/GO home channel if any, to avoid the
concurrency check failure.

Change-Id: I363e9c8307ac4cfa70d6d00bc0d01a545c3eca26
CRs-Fixed: 3249205
2022-08-19 06:40:19 -07:00
Madan Koyyalamudi
dae7dbfd15 Release 5.2.1.33M
Release 5.2.1.33M

Change-Id: I5357b7c34221bb5004c325b59bb613e167dffc9e
CRs-Fixed: 774533
2022-08-19 05:05:37 -07:00
Deeksha Gupta
cd451c20c6 qcacld-3.0: Fix pack and unpack EHT-MCS map (BW = 160 MHz) issue
As a part of eht cap pack and unpack, EHT MCS map (BW = 160 MHz)
is present only if B2 of the Supported Channel Width Set field
in the HE PHY capabilities information field is 1.

Change-Id: I24519b27e67219a9d4611636e2c02af4b82b17ec
CRs-Fixed: 3258157
2022-08-19 05:05:37 -07:00
Arun Kumar Khandavalli
6c9cb8b5b4 qcacld-3.0: Add a new flag to enable the mlo key operation support
Add a new flag to enable the Mlo key operation support.

Change-Id: I528526dd3787ae9ff50d00be0d8e36e33443557c
CRs-Fixed: 3267043
2022-08-19 05:05:31 -07:00
Utkarsh Bhatnagar
23582bfd81 qcacld-3.0: Reject TDLS Setup for concurrencies
Add concurrency conditions to reject TDLS setup if
along with BSS STA, any other iface is in connected state.

In case where supplicant directly sends TDLS setup without
adding peer or Discovery been rejected because of
concurrency, driver adds the peer and update fw with the
same using UPDATE_TDLS_PEER_STATE command. This results
in fw crash as TDLS state is not yet set.
This check is required because setp_peer shouldn't be
processed if any other interface such as SAP, P2P already
have started otherwise it will result in FW crash.

Change-Id: Ia0f1f099a5fb5be0c4875a38842d97070964aaa0
CRs-Fixed: 3263513
2022-08-19 05:05:25 -07:00
Liangwei Dong
dac2e7867e qcacld-3.0: Fix client disconnect from SAP in 2.4 GHz
After SAP moved to 2.4 GHz HT 40 because of Radar detected in 5 GHz,
the REF STA send SA Query to SAP. But the REF STA disabled HT 40 in
2.4 GHz(channelBondingMode24GHz=0), the REF STA switched to HT 20.
The SA query OCI included op class 81 (20 MHz) from REF STA, the SAP
check OCI failure (SAP op class 84, 40 MHz) by lim_check_oci_match
and send deauth to REF STA.
lim_check_oci_match only check the op_class equal or not with received
OCI. If not equal, it will return false.
According OCI doc, local transmit BW is not allowed greater than BW
in OCI received from peer. Fix it by checking BW of local and peer
instead of op class only.

Change-Id: I62a477f8edabae31d07d6ec8ebb78ca76ca78792
CRs-Fixed: 3268105
2022-08-19 05:05:20 -07:00
Madan Koyyalamudi
bd995b86b7 Release 5.2.1.33L
Release 5.2.1.33L

Change-Id: I5499b033227d1e97c98353870582b42b9fa70cfa
CRs-Fixed: 774533
2022-08-19 01:53:49 -07:00
Surabhi Vishnoi
ef08e7a4c4 qcacld-3.0: Select first clean channel for ACS to optimize SAP turn on time
Currently, ACS computation triggers when ACS scan complete event is
received after firmware has scanned all channels. This leads to
delay in selection on SAP channel.
As an optimization, this change selects the first clean channel
while scan is still in progress. The criteria for first clean channel
is that no beacon/probe response should be received on that channel.
If such channel is obtained while scan is in progress, then select this
channel as SAP channel and abort ongoing scan. Firmware sends
wma_chan_info_event per channel this change uses this event as an
indication that scan is completed on that channel.

To further increase the optimize the time to get clean channel, sort the
ACS frequency list in descending order in ACS SCAN request to
firmware. Firmware scans the channel in the order given by host
in scan request, as higher band channels are less occupied, the
probability of getting clean channel initially will increase, which
will lead to selecting the channel in less time and thereby reduce
the SAP turn on time.

Change-Id: I1a38556862b66943edea08783436f5e1e3a255f6
CRs-Fixed: 3245166
2022-08-19 01:53:49 -07:00
Surabhi Vishnoi
1981726d18 qcacld-3.0: Refactor code to store chan info status in cp_stats
Currently channel info stats are stored in LIM. Refactor
code to store channel info stats in cp stats component.

Change-Id: I2e7219c112e96916d3b73f974dd9803b9c2821c3
CRs-Fixed: 3265722
2022-08-19 01:53:43 -07:00
Xiaoning Ma
a7fcc140bb qcacld-3.0: Add fixed FDD mode to btc_chain_mode
Previously when chains of BT and WLAN 2.4 GHz are separated,
hybrid mode will be used for BTC. Now adding fixed FDD mode
to fulfill different BTC scenarios.

Change-Id: I3a4d6919319f0f66e6b816566f24f4ac11b2c669
CRs-Fixed: 3244045
2022-08-19 01:53:35 -07:00
Madan Koyyalamudi
1c9910e1b5 Release 5.2.1.33K
Release 5.2.1.33K

Change-Id: Ie774d5277b47c75f9c09930b33efbc46a193ab4b
CRs-Fixed: 774533
2022-08-18 21:53:25 -07:00
Vinod Kumar Pirla
91b87f3ddc qcacld-3.0: Configure add key on link MAC address for MLO
Unencrypted DHCP frame is sent when add key is configured
on MLD address for secure MLO association.

In secure MLO assoication, configure add key on the link MAC
address.

Change-Id: Id1c953569a1f115beb5c0dcb816f08126901a05f
CRs-Fixed: 3270887
2022-08-18 21:53:25 -07:00
Gururaj Pandurangi
e3626b9d02 qcacld-3.0: Populate HE 160 MCS map for session ch bw 320
Populate HE 160 MCS rates even when session bandwidth is
320 MHz and peer supports 160 MHz BW.
Currently, HE 160 MCS map is populated only when session
bandwidth is 160 MHz, else it is reset. In the case of
11be SAP with 320 MHz support, HE 160 tx/rx MCS rates
must be updated with the intersection of self and peer
MCS rates, instead of HE_MCS_ALL_DISABLED.

Change-Id: I93d1d476c33aa98e96e76c2668f18456a9a874b9
CRs-Fixed: 3264361
2022-08-18 21:53:20 -07:00