Commit Graph

29050 Commits

Author SHA1 Message Date
Srinivas Dasari
c35183ec87 qcacld-3.0: Consider only active links to handle eMLSR concurrency
Currently, eMLSR concurrency API considers both the links to
decide whether to allow or disallow the command while
force-enabling links. But one link might have got disabled to
handle some concurrency and might not be present in the
policy mgr table. Driver has to consider the links that are
present in policy mgr to allow/disallow link-enable command
when an eMLSR connection is present along with other concurrency.

Also, user might try to force-enable the disabled link. Allow
that only if eMLSR concurrency is not present.

Change-Id: I0a68059b7d16629016b3c40dbc0345523d46ef21
CRs-Fixed: 3500106
2023-05-25 06:16:22 -07:00
Rahul Choudhary
4add426d12 Release 5.2.1.68
Release 5.2.1.68

Change-Id: I4d6642d02f7d8f1c38d43e11dea24dd39f4d63e5
CRs-Fixed: 774533
2023-05-25 01:35:27 -07:00
Jyoti Kumari
1aa66f5a46 qcacld-3.0: Avoid processing back to back ACS req within 500ms
Currently as part of LL_LT_SAP optimization, driver receives
do_acs command from below two path

1. LL_LT_SAP library to get the channel early and
2. Hostapd during SAP turn on

In the first request if driver finds the clean channel as part
of partial scan req then it directly sends that channel to
requested module. So in the second request, driver will exclude
the recently scanned channel from scan list. But there may be
possible that it may receive another clean channel during scan
which leads to two different back to back ACS frequency.

To avoid this, store the current acs frequency and if driver
receives the second acs req within 500ms then send the stored
acs result to requested module.

Change-Id: I9b083a64e996f6ada32ff5210a304aa66aa6ec3a
CRs-Fixed: 3498271
2023-05-25 01:35:26 -07:00
Vinod Kumar Pirla
d018ca19d0 qcacld-3.0: Use backport flag to fill tdls params for 11be
To avoid compile issues where the kernel version doesn't support
11be and WLAN_FEATURE_11BE macro alone can't be used.
Use CFG80211_11BE_BASIC to ensure proper kernel version check for
11be support.

Change-Id: I23a1b6f6e1b46a4ce686d8d1a4152c94922281fc
CRs-Fixed: 3482727
2023-05-25 01:35:21 -07:00
Rahul Choudhary
db0876626f Release 5.2.1.67Z
Release 5.2.1.67Z

Change-Id: I4a4b379c73c52038428a10b571087b24af068944
CRs-Fixed: 774533
2023-05-24 23:43:31 -07:00
Chunquan Luo
b7bb2170bb qcacld-3.0: Check acs_cfg is Null
When AP mode is not initialized done, trigger AP scan manual maybe crash,
since acs_cfg maybe null.

Change-Id: I1b5f5eb301a10661a75557dcd9d4fc1fa1b9819b
CRs-Fixed: 3478487
2023-05-24 23:43:31 -07:00
Azmath Mohammed
e9ecff38ae qcacld-3.0: Replace fallthrough comment with attribute
-Wimplicit-fallthrough is being enabled by default. Some compilers
such as clang require the attribute instead of just a fallthrough comment.
modify the DMA direction parameter from
PCI_DMA_FROMDEVICE to DMA_FROM_DEVICE.
Added missing break statement.

Change-Id: I1a226b1c2ce92c7290a094b33a81968d27ff74b3
CRs-Fixed: 3505237
2023-05-24 23:43:26 -07:00
Rahul Choudhary
86776d5892 Release 5.2.1.67Y
Release 5.2.1.67Y

Change-Id: I9c7f95e03c6896933680c2b67b6f004c9b99ae6f
CRs-Fixed: 774533
2023-05-24 21:39:56 -07:00
Vinod Kumar Pirla
afff5f6dff qcacld-3.0: Introduce adapter back pointer in link info
Introduce a new member in per link data structure to fill
the back pointer to adapter.

Introduce new API to get the index of link info pointer
in the array.

Change-Id: I76c96c5d23fcd587181abdbc5b3fdd3634b7e4ab
CRs-Fixed: 3450353
2023-05-24 21:39:55 -07:00
Amruta Kulkarni
0e0878c654 qcacld-3.0: Parse T2LM IE in Association Response
Add support to parse t2lm ie from association response frame
and store in mlo dev context. Once all links are up
the t2lm configuration will be applied.

CRs-Fixed: 3449605
Change-Id: Icd1f3c9bbdfbe1c2a8bfe119d92d6e686e21a7fd
2023-05-24 21:39:49 -07:00
Rahul Choudhary
09628b62ed Release 5.2.1.67X
Release 5.2.1.67X

Change-Id: Iea8de2ee6deeba4d43e0a9a159bb9873c0964ef5
CRs-Fixed: 774533
2023-05-24 12:42:11 -07:00
Jianmin Zhu
377edefc12 qcacld-3.0: Fix wrong puncture bitmap issue
if local var of struct ch_params isn't initialized to 0, the value is
random, reg_punc_bitmap in it is random as following too.

notify: chan:2462 width:1 freq1:2462 freq2:0 punct 0x8880

Change-Id: I8b73aa57cc83181914abff2d3775d7bfb741601d
CRs-Fixed: 3506745
2023-05-24 12:42:11 -07:00
Rahul Choudhary
0ed5346a4c Release 5.2.1.67W
Release 5.2.1.67W

Change-Id: I074ad0c6123c7fba4b9ae4cf067fee16a5a0fee4
CRs-Fixed: 774533
2023-05-24 08:55:28 -07:00
Abhishek Singh
3d8acc0df0 qcacld-3.0: Optimize HE cap logs
Optimize HE cap logs, by grouping them.

Change-Id: I7212a492df9f3b76a3a177194625839b518346a6
CRs-Fixed: 3506942
2023-05-24 08:55:27 -07:00
Rahul Choudhary
43d44328f6 Release 5.2.1.67V
Release 5.2.1.67V

Change-Id: I48b6bbfe5dffe7c58d046f04781b07d0195aae1d
CRs-Fixed: 774533
2023-05-23 21:56:42 -07:00
Gururaj Pandurangi
01fcda20bf qcacld-3.0: Change WMI force mode for ML link switch case
Currently, to switch links from link A to link B, Host sends
two back-to-back WMI commands to FW, by setting link B force
active and link A force inactive respectively with force
mode MLO_LINK_FORCE_MODE_ACTIVE/MLO_LINK_FORCE_MODE_INACTIVE
but if association is in EMLSR mode, FW considers the first
WMI to set link B active (when link A is already set active)
to be a trigger to enter EMLSR mode and sends OMN frame as
part of it. To avoid this, Host has to send a single WMI
with force mode MLO_LINK_FORCE_MODE_ACTIVE_INACTIVE and
include both active and inactive vdev bitmaps within the
same command to clearly indicate the link switch.

Change-Id: Iae58fedc800c891625d737daf238fa476382f4a1
CRs-Fixed: 3487826
2023-05-23 21:56:41 -07:00
Rahul Choudhary
daae501ffb Release 5.2.1.67U
Release 5.2.1.67U

Change-Id: I13dd11f279ce4ea9720db582ef24c5fde0056e99
CRs-Fixed: 774533
2023-05-23 19:53:45 -07:00
Surabhi Vishnoi
89dbd6c655 qcacld-3.0: Fix data rate for mgmt tx packets in packet capture mode
Currently, data rate for management tx packets is filled only as
1 or 6 Mbps which is wrong.
Sniffer expect data rate multiple of 2. Hence fill the data rate with
multiple of 2 for tx management packets which received from firmware
and converting into mbps.

Change-Id: I5dd6515804cd3751925af0992a30a7441ebf9bbb
CRs-Fixed: 3444177
2023-05-23 19:53:44 -07:00
Srinivas Dasari
6c5a645cbe qcacld-3.0: Fetch freq from roam_sync ind for non-11BE platforms
Currently, mlo_roam_get_link_freq_from_mac_addr() returns 0 for
non-11BE platforms. Valid freq is present in roam_sync indication
and return the same.

Change-Id: I7156adadae9303257bf96e91e4cb8b5d11706104
CRs-Fixed: 3502610
2023-05-23 19:53:39 -07:00
Vinod Kumar Pirla
b0c9e8a2a7 qcacld-3.0: Introduce link_info array iterator APIs
Add a new iterator to loop through all the elements of
link_info array in adapter.

API: hdd_adapter_for_each_link_entry()
	a) This API iterates through all the links,
	   irrespective of whether the index in active_links
	   bitmap is set or not, starting from zeroth index.
	b) The iterator stops at the end of the array.

Change-Id: I6e7aa59fe1828daebe9c616c90d345d0ca405d10
CRs-Fixed: 3448729
2023-05-23 19:53:34 -07:00
Rahul Choudhary
1f4d6388da Release 5.2.1.67T
Release 5.2.1.67T

Change-Id: I1c6c5cb0815ca3a9ab8bd1643cf130dd9861836b
CRs-Fixed: 774533
2023-05-23 06:59:26 -07:00
Chunquan Luo
35160f2ec7 qcacld-3.0: Signal value on p2p-go mode error
P2P-GO mode, use cmd "iw dev p2p0 station dump" get peer
info, the signal value is positive, it means snr, switch
to rssi.

Change-Id: Ibbf62520454144869353e68237981a217a5691fa
CRs-Fixed: 3501760
2023-05-23 06:59:26 -07:00
Rahul Choudhary
25d4656433 Release 5.2.1.67S
Release 5.2.1.67S

Change-Id: If11084f1c68c18092ee31cda36859af3a72045d7
CRs-Fixed: 774533
2023-05-23 05:16:20 -07:00
Amit Mehta
5bc13c99ec qcacld-3.0: Check if tlv reo_dest_indication is valid
Currently if hash-based routing fails, packets will be sent
with default routing which will result in packet being queued
to REO2SW1 with tlv reo_dest_indication = 1. Host will create fisa
flow with napi = 0 for REO2SW1.

When next packet received with correct tlv reo_dest_indication value
on different REO with flow_index_invalid = 1 and if tuple matches
with earlier created flow, it can result in REO mismatch issue.

To fix the issue if rx_hash is enabled add check for
tlv reo_dest_indication value.

Change-Id: Ib0895ce666cc788a6df8ae3483e0777e84937ef8
CRs-Fixed: 3500655
2023-05-23 05:16:20 -07:00
Rahul Choudhary
f04c083253 Release 5.2.1.67R
Release 5.2.1.67R

Change-Id: I22f70762533ea1d3a38d452ab915363f677dd433
CRs-Fixed: 774533
2023-05-23 03:24:37 -07:00
Yu Ouyang
88e627fbf8 qcacld-3.0: Allow to access API cnss_get_pci_slot on msm-5.4 platform
Change 4605350 already added API cnss_get_pci_slot on msm-5.4 platform.

Change-Id: I4eedbc1e142f2a4aa2a54348561604198c688208
CRs-Fixed: 3474848
2023-05-23 03:24:36 -07:00
Rahul Choudhary
4fd9df866c Release 5.2.1.67Q
Release 5.2.1.67Q

Change-Id: If1e71af472d236e5f42d1262ab24ae19ea37f1bb
CRs-Fixed: 774533
2023-05-23 01:19:26 -07:00
Rakesh Pillai
ba1fbb8b3f qcacld-3.0: Move DP suspend/resume code to DP component
Currently OSIF calls the CDP API for DP suspend/resume
handler directly.

Move these calls to DP component so that DP component
can handle the suspend/resume related operations for
internal DP sub-modules (which are outside CDP).

Change-Id: I080809904f619260c707cacbcdbf158250320081
CRs-Fixed: 3502507
2023-05-23 01:19:26 -07:00
Rahul Choudhary
f3e840679b Release 5.2.1.67P
Release 5.2.1.67P

Change-Id: Ifa0fe21c9021739d9168087b515a7da38acc665f
CRs-Fixed: 774533
2023-05-22 22:36:20 -07:00
Liangwei Dong
7d07fb252b qcacld-3.0: Fix no force SCC on SAP with 3 connection
Current hw mode is SBS low share. STA 5180, SAP 1 2412,
SAP 2 5745, but SAP 1 is 2 GHz only, can't move to STA 5180,
SAP 2 is SBS with STA, policy_mgr_are_2_freq_on_same_mac
return false for 5745 and 5180 and finally function
policy_mgr_is_restart_sap_required return false, no force
SCC on SAP 2.
Add mcc connection count check for SAP2, if SAP 2 channel
is different from all of existing 2 or more connections, then
try to force SCC on SAP 2.

Change-Id: I7029fd3ec0b8e0ae4543edd9667daa1f87802a7a
CRs-Fixed: 3497431
2023-05-22 22:36:19 -07:00
Will Huang
c7ececd18f qcacld-3.0: Get SAP best channel bandwidth for multi-SAP
For multi-SAP case, after get pcl channel list, also call
wlansap_select_chan_with_best_bandwidth() to get best bandwidth
channel so that don't shrink bandwidth after COEX happen.

For concurrency with STA/P2P mode, don't invoke above function and
take pcl channel as first priority.

Change-Id: Ie211f87728d445aad8d806a1025fb76b4c6dccf0
CRs-Fixed: 3491478
2023-05-22 22:36:14 -07:00
Rahul Choudhary
b1143e4d1e Release 5.2.1.67O
Release 5.2.1.67O

Change-Id: I623f68d6b9384b13c51911b58dc097d8f803ccff
CRs-Fixed: 774533
2023-05-22 20:14:56 -07:00
Bing Sun
b1586c23fb qcacld-3.0: Do not release vdev reference if vdev is NULL
In wlan_cm_get_associated_ch_width, if vdev is NULL, which means
reference is not gotten. do not call wlan_objmgr_vdev_release_ref.
Otherwise there is QDF ASSERT.

Change-Id: Id1cc2be3869ad555ebeb1c91a4b5f75d499e70ac
CRs-Fixed: 3503877
2023-05-22 20:14:55 -07:00
Rahul Choudhary
47f4104d40 Release 5.2.1.67N
Release 5.2.1.67N

Change-Id: I97f35e9e65b65f6ce0baeab535fec7d292ca234f
CRs-Fixed: 774533
2023-05-22 18:29:46 -07:00
Vijay Raj
c48f9003ac qcacld-3.0: Modify wma_set_mlo_capability to send correct value
In api wma_set_mlo_capability(), the value for EMLSR
transition timeout value is sent as subfield value
instead in microseconds.

Modify wma_set_mlo_capability() api to send transition
timeout value in microseconds.

Change-Id: Ib8daecbb0d35bb43fb4706f3c39124a8b6cdffe6
CRs-Fixed: 3494498
2023-05-22 18:29:46 -07:00
Bing Sun
8fae636f18 qcacld-3.0: Fix OWE MLO roaming
When roaming from OWE SLO to OWE MLO, host considers it as SLO roaming,
although FW sends both assoc link and partner link information to host.

Currently host adds partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links, since it already receives partner
link information from FW. Then RSO fails to translate to stop state in
cm_fw_roam_complete because partner link is not up.

To make RSO state translation work, host need add partner link to
sta_ctx->wlan_connected_links when partner link connection is
triggered, which is mlo_roam_prepare_and_send_link_connect_req.
Do not add partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links.

When roaming from OWE MLO to OWE MLO, host triggers disconnection in
partner link, which should not enable roaming in connected STA.

Change-Id: I99938a0805d60287eb2714e5d271579ac2fb4aeb
CRs-Fixed: 3498822
2023-05-22 18:29:41 -07:00
Jianmin Zhu
6d5e7fd3ed qcacld-3.0: Allow STA CSA during roaming
Allow STA CSA during roaming

Change-Id: Ied29b9d3212d3646f7e8cc067cf2d2ec02957099
CRs-Fixed: 3505335
2023-05-22 18:29:36 -07:00
Rahul Choudhary
812bdff2e7 Release 5.2.1.67M
Release 5.2.1.67M

Change-Id: Ic80af0625bad03404c9be187d817372b2d73f13c
CRs-Fixed: 774533
2023-05-22 16:45:51 -07:00
Jeff Johnson
52dcf788de qcacld-3.0: Fix reg_db.h include path
Currently in cds_regdomain.h the following file is included:
"../../qca-wifi-host-cmn/umac/regulatory/core/src/reg_db.h"

While transitioning to the Bazel DDK build system this results in a
build error because the build is done in a sandbox with the root at
the qcacld-3.0 folder, and hence there is no way to access
"../qca-wifi-host-cmn."

To address this issue add the following -I path to the Kbuild:
qcacld-3.0/cmn/umac/regulatory/core/src

And then cds_regdomain.h can just include "reg_db.h".

Change-Id: Ib33300f3593e39caeace1238f2b40c819539ff10
CRs-Fixed: 3497251
2023-05-22 16:45:51 -07:00
Ashish Kumar Dhanotiya
bbfff086f4 qcacld-3.0: Add new concurrency mode for low latency SAP
Current SAP does not support MCC and for low latency SAP,
host driver needs to support MCC.
To support MCC with SAP, add new concurrency mode for low
latency low throughput SAP as PM_LL_LT_SAP_MODE.

CRs-Fixed: 3469425
Change-Id: Ifb4b2db3bf3c2b433324580fde32d1673df5ae67
2023-05-22 16:45:46 -07:00
Rahul Choudhary
cfe797bf8a Release 5.2.1.67L
Release 5.2.1.67L

Change-Id: I03fe22507e5174a6b44d88624feb9b786f84373d
CRs-Fixed: 774533
2023-05-22 13:22:42 -07:00
Jeff Johnson
86c94d1b8f qcacld-3.0: Correctly test for FEATURE_WLAN_RA_FILTERING
During the conversion to the Bazel DDK build system the qcacld-3.0
driver was built without the FEATURE_WLAN_RA_FILTERING flag being
set. This resulted in two separate build errors due to incorrectly
testing using #if instead of #ifdef, so fix those tests.

Change-Id: I9265475c1d33918e8fac7fc138e0bfdc301e5eef
CRs-Fixed: 3497220
2023-05-22 13:22:41 -07:00
Rahul Choudhary
eb659bec24 Release 5.2.1.67K
Release 5.2.1.67K

Change-Id: Icc820f28199c72e91cd20c1ef814bfe257460754
CRs-Fixed: 774533
2023-05-22 07:05:55 -07:00
Jia Ding
ccb39e0470 qcacld-3.0: Provide MLD MAC of connected clients to IPA
For MLO connection, mld addr of connected peer is used
for data packets over the air. Hence same mld addr needs
to be notified to IPA so that offload path can be taken
for connected peer with MLO connection.

Currently for connected ref-clients, link address is provided
to IPA driver and hence only link MAC address are installed
to IPA HW. With MLD MAC address being used in ethernet header,
MAC address mismatch occurs and IPA offload function is not
working.

Fix is to provide MLD MAC address of connected clients to IPA
if SAP vdev is MLO and MLD address are not 0.

Change-Id: Ie739b0c0c569bda03497eae3485d16917e9bdd84
CRs-Fixed: 3497200
2023-05-22 07:05:54 -07:00
Rahul Choudhary
074e314d85 Release 5.2.1.67J
Release 5.2.1.67J

Change-Id: Ie49dcddbd178872ea9609f96cae7a26a46f2ee0d
CRs-Fixed: 774533
2023-05-21 20:15:40 -07:00
Jeff Johnson
4013420fea qcacld-3.0: Remove CONFIG_CRYPTO_COMPONENT flag
The crypto component is always enabled. As a result, the feature flag
CONFIG_CRYPTO_COMPONENT is pointless, so remove it.

Change-Id: I97c22f3bf1224ecd967212d762545890f71764bc
CRs-Fixed: 3496915
2023-05-21 20:15:40 -07:00
Rahul Choudhary
c5742d0e4a Release 5.2.1.67I
Release 5.2.1.67I

Change-Id: I72d8b1fd10a2f9e3c090f9b2eea3c99848a96ea1
CRs-Fixed: 774533
2023-05-20 12:54:19 -07:00
Jianmin Zhu
5d55617fb1 qcacld-3.0: Fix no puncture in chan change event when SAP start
When SAP start, channel change event is sent to upper layer before
vdev start, puncture bitmap isn't filled at that time.

To fix it, send channel change event to upper layer after SAP vdev
started.

Change-Id: If7a993c354ab456762cc7be068b12eece0d2893d
CRs-Fixed: 3495030
2023-05-20 12:54:19 -07:00
Rakesh Pillai
b8f4110c6e qcacld-3.0: Move DP init code in CDS layer to DP component
Currently the CDS layer calls the cdp functions
directly to initialize common DP.

Move these calls to DP component, so that DP
component can handle other DP related initialization
inside the DP component itself.

Change-Id: Ib257ac4f41d468706078cd34a8cbec004a9a622e
CRs-Fixed: 3499726
2023-05-20 12:54:07 -07:00
Jianmin Zhu
da32facf8d qcacld-3.0: Avoid STA CSA during connecting
When process new beacon of current AP during connecting: after pe session
created and before peer assoc, peer phy mode isn't configured, in
lim_process_beacon_eht_op, current channel width is treated as 20M wrongly,
the channel width in eht op of beacon usually larger than 20M, so CSA is
started and RSO is disabled wrongly, although CSA not handled for vdev not
up, RSO can't be enabled any more.

To fix it, only handle eht op of beacon when sta vdev connected.

Change-Id: I8f93a3fbf5ec1de868be2581b0a9a2d77743625e
CRs-Fixed: 3504210
2023-05-20 12:54:02 -07:00