İşleme Grafiği

19272 İşleme

Yazar SHA1 Mesaj Tarih
Kenvish Butani
c0fe52d4c6 qcacmn: Get vdev stats based on arch
With Single Netdev Unified and Hybrid Mode,
the calculation of vdev stats is changed as
per the mode. For LI platforms the path
to get vdev stats is still same while for
BE the vdev stats config path is different.
Introduced Arch ops to handle this diversion.

Change-Id: If4f0f49e78d35126942cd3f1872a5856e4d0f5ba
CRs-Fixed: 3482567
2023-05-15 03:45:15 -07:00
Edayilliam Jayadev
6f869404f6 qcacmn: Fix use after free in mgmt Rx REO debug infrastructure
Management Rx event parameters structure is  are accessed for debug
logging, after the frame is queued in the egress/ingress list. The queued
frame might get dropped in the mean time and this may lead to the
freeing of the management Rx event parameters structure. Fix the issue
by splitting the logging into two parts. Required fields of management Rx
event parameter structure are logged before updating the ingress/egress
list.

Change-Id: If7847fa3a7aca1298216aef91f089aa77d94e6a9
CRs-Fixed: 3489094
2023-05-15 01:28:35 -07:00
Kenvish Butani
ef68ac521f qcacmn: vdev stats Support for MLO Hybrid Mode
Add vdev stats support for DP MLO Unified
and Hybrid Mode.
Add new CDP API for getting vdev stats for
NON_MLD interface.
Add support to get vdev stats for specific
vdev which is a part of MLO.

Change-Id: I72c8b25958649d473e1b65cee21810cd86951187
CRs-Fixed: 3455607
2023-05-15 01:28:24 -07:00
Liangwei Dong
fa5b39c322 qcacmn: Allow roam if prev_bssid is AP mld address
"prev_bssid" can be AP mld address if current connection
is mlo connection. Allow roam if "prev_bssid" is AP mld
address.

Change-Id: Iebc71acae11fcbfb4fc98ec2199d546d71ef057c
CRs-Fixed: 3489879
2023-05-14 22:57:58 -07:00
Bing Sun
84d654cc7c qcacmn: Initialize local variable before using it
Do not use API to do variable initialization job.
Otherwise there is built error in some platform.

Change-Id: I489057a2753bf7bf091e87b902efa833ea90ece9
CRs-Fixed: 3471557
2023-05-14 22:57:48 -07:00
David Oladunjoye
a6b80a2f32 qcacmn: Add stub implementation when TWT is not enabled
Add stub implementation when TWT is not enabled.

Change-Id: I5a24376a04ebdaa88cbbc6cf4350d8de38bc6879
CRs-Fixed: 3488459
2023-05-14 16:07:24 -07:00
Namita Nair
b84e6e73fd qcacmn: Enable SAP/GO D3 WOW for OPT_WIFI_DP case
Currently as IPA_OFFLOAD path is enabled for OPT_WIFI_DP
usecase, this causes SAP/GO D3 WOW to be disabled.
This change will add a check to ensure D3 WOW is
enabled when IPA path is set for OPT_WIFI_DP usecase.

Change-Id: Idbbec78dadcba3e8f26b9c01e296869cd7278750
CRs-Fixed: 3496857
2023-05-14 13:38:17 -07:00
Santosh Anbu
19682c944c qcacmn: Enable interrupts for CE4 ring
Enable interrupts for CE4 ring for WIN specific Li York platform.

Change-Id: Ib11d719272cc81279d84c8fe455f2c18dd8ffe01
CRs-Fixed: 3439000
2023-05-14 13:38:07 -07:00
Surya Prakash Raajen
0fcbe55b8d qcacmn: Drop multiple teardown if already in teardown
Drop multiple teardown requests if mlo group is already in
teardwown phase

Change-Id: Id07ed50c2845b69c79bf6ccc4a6436eab8898532
CRs-Fixed: 3458369
2023-05-14 13:37:58 -07:00
Surya Prakash Raajen
cb01519700 qcacmn: Trigger UMAC reset with mode1 SSR teardown
Add support to trigger UMAC reset with mode1 teardown request
for mode1 target recovery SSR.

Change-Id: Ib2d1679162a2084488081c76f6753287a6e4d5c4
CRs-Fixed: 3458369
2023-05-14 13:37:48 -07:00
Jia Ding
351f4a79a7 qcacmn: Properly vote IPA perf bandwidth
IPA does not support dynamic voting for max BW supported.
Hence WLAN has to do static and one-time vote for max
BW supported.

For KIWI family, vote 4800 to achieve nominal scaling.
For other chipsets, keep 800 as is and modify if new
requests are needed.

Change-Id: I2eb82857355097de5ab7c508df0e84eb1a141654
CRs-Fixed: 3482693
2023-05-14 11:07:51 -07:00
Srinivas Pitla
ca2acbe6bc qcacmn: Implement reassoc framework
This change processes Duplicate Assoc req from MLO Station
This would reuse old link peers and populate assoc req IEs.

This will fail, if Assoc link is not same as previous,
and number of links are not same as previous assoc req
processing.

Change-Id: I6a8c412b0bc484e8eb64ca794e54e080c391f7f8
CRs-Fixed: 3465223
2023-05-14 11:07:41 -07:00
Will Huang
638086f05d qcacmn: Fix possible compile error if include service_ready_param.h
enum reg_afc_dev_deploy_type afc_dev_type is defined as variable in
service_ready_param.h if AFC enable, reg_afc_dev_deploy_type defined
in wlan_reg_afc.h.

Include this head file if AFC enable so that don't have to include it
everywhere include service_ready_param.h.

Change-Id: I4bab90dc051c8afb984d7a486c97743b5c277589
CRs-Fixed: 3482426
2023-05-14 11:07:31 -07:00
Himanshu Batra
25e0531edd qcacmn: Add fix to validate disconnect req for MLO STA
In case of MLO, to avoid race between ongoing connect and a new
disconnect, add fix to validate disconnect req for MLO STA

Change-Id: I4b27a06103ffce637738b1894c3bdcf46533043c
CRs-Fixed: 3493915
2023-05-14 11:07:21 -07:00
Vivek
7c844f2d3f qcacmn: Handle the HTT message for SAWF peer AST update
When a new MSDUQ is instantiated for a peer, additional
dynamic AST indices are allocated.The new AST indices
should be used in subsequent MSDUs.

Handle the HTT message to update the dynamically allocated
AST indices.

Change-Id: Iea24e1f3523006f40c781abdc3c176ba25ecd5a5
CRs-Fixed: 3449259
2023-05-14 08:12:02 -07:00
Neha Bisht
53800babd2 qcacmn: Update reo pointers for new primary Qref table
Update reo pointers for new primary Qref table.

Change-Id: I3ac5cdd39f91ae84ecb595d613574bd7ee127d99
CRs-Fixed: 3486401
2023-05-14 08:11:52 -07:00
abhinav kumar
058889e6a0 qcacmn: Process ML Channel Measurement request
Host parse newely added vendor command
QCA_NL80211_VENDOR_SUBCMD_CONNECTED_CHANNEL_STATS and trigger
scan to get connected channel stats from FW in case of MLO
connection.

On scan done host sends scan done indication to upper layer
via QCA_NL80211_VENDOR_SUBCMD_CONNECTED_CHANNEL_STATS vendor
command.

Change-Id: I92dbd779c5fbdb1652a37cfa54c177bd13de4f28
CRs-Fixed: 3491060
2023-05-14 05:07:51 -07:00
Rakesh Pillai
4bb252b2a3 qcacmn: Featurize wlan repeater handling in multipass
Currently the packet tx handling for AP-multipass
assumes wlan repeater to be present. For targets like
qca6490, kiwi etc, wlan repeaters are not supported in
the network topology.

Hence to skip unwanted tx packet copy in per-pkt path,
move the code to handle packet tx to waln repeater in
multipass mode under a feature macro.

Change-Id: I8bb3fbc4f3de76c3ae04978d12d369fad5d2553f
CRs-Fixed: 3491508
2023-05-14 05:07:40 -07:00
Rakesh Pillai
e01279c8cf qcacmn: Include enet.h for ETHERTYPE_VLAN_LEN macro definition
ETHERTYPE_VLAN_LEN is defined in enet.h, which is not being
included in dp_main.c, which can lead to compilation error
if the MULTIPASS feature is enabled.

Include the enet.h header file for ETHERTYPE_VLAN_LEN macro
definition

Change-Id: I589123a0e2161486a430c6e8d6ca18e5907252d4
CRs-Fixed: 3494435
2023-05-14 05:07:29 -07:00
Aditya Kodukula
d943abd732 qcacmn: Add support to fetch link layer stats per MLO link
IEEE 802.11be enables multiple links between STA and AP. Each of the
link has its own set of statistics. Add additional attributes required
to fetch link layer statistics per MLO link.

For MLO connection, per MLO link statistics will be sent with the new
attribute QCA_WLAN_VENDOR_ATTR_LL_STATS_MLO_LINK. Also, cumulative
statistics of all the MLO links will be sent outside
QCA_WLAN_VENDOR_ATTR_LL_STATS_MLO_LINK to be compatible with legacy user
space.

For non-MLO connection, the statistics will be sent without being nested
inside QCA_WLAN_VENDOR_ATTR_LL_STATS_MLO_LINK attribute.

Change-Id: I2abe31ad754e59c101ff79dd3ae956bc93880a33
CRs-Fixed: 3488156
2023-05-14 05:07:18 -07:00
Hariharan Ramanathan
71b2a0dce1 qcacmn: Changes to move stub functions to header file
Changes done to move stub functions present in source file under
WLAN_MGMT_RX_REO_DEBUG_SUPPORT flag to header file.

Change-Id: I34297a48b67fb3200fed7e5e4b842647125d4fb0
CRs-Fixed: 3481641
2023-05-14 02:07:16 -07:00
Harsh Kumar Bijlani
ab46f235a0 qcacmn: Update rx_fast_flag for Rx protocol tag feature
Update rx_fast_flag for Rx protocol tag feature irrespective of
enhanced_stats_en flag.

Change-Id: Ibea2869cc182ad7d1683692d86b01de542cbddd0
CRs-Fixed: 3481654
2023-05-14 02:07:07 -07:00
Venkateswara Swamy Bandaru
a81e75d13b qcacmn: Add EPCS action frame receive support
Add EPCS action frame types on receive to process further.

Change-Id: Ieaae0dc2dd5bb3fbdc2b4d4c65f5ffd79498484d
CRs-Fixed: 3490402
2023-05-14 02:06:57 -07:00
Yu Tian
4e16309dd1 qcacmn: split srng history into small trunks
ring history array size is large. Change is aimed
to split the allocation into small trunks to avoid
memory allocation failure.

Change-Id: If977baab23718d0186ad2ce6d33319b52096f2f9
CRs-Fixed: 3479226
2023-05-13 23:33:50 -07:00
Vijay Patil
c3a34a4987 qcacmn: Iterate through all vdevs and check if CAC is in progress
Add an API to iterate through all vdevs and check if any vdev is
in CAC in-progress state.

When DFS CAC is going on for SAP, if 5 GHz mac is occupied by the
SAP and it's not available for 5 GHz NAN discovery. Enabling NAN
on 5 GHz in such cases cause inconsistency in firmware state machine
and firmware may assert as DFS MAC is not supposed to be disturbed
while CAC is going on.

So, check if NAN enable request has 5 GHz NAN channel also and reject
the request. Allow NAN enable command if it's 2 GHz only NAN enable
request, while CAC is going on.

Change-Id: Idcd92e29d4b6078332d439efb75eba6800e986bb
CRs-Fixed: 3492054
2023-05-13 17:02:42 -07:00
Aditya Kodukula
337b5b6195 qcacmn: Update QCA LL_STATS vendor command
Define bitmap values used by LL_STATS vendor command
and update the corresponding kernel documentation.

Change-Id: I70c86926a19907a2a1053bccbd7b316b198e1fb8
CRs-Fixed: 3488125
2023-05-13 07:19:23 -07:00
Aditya Kodukula
01e2992149 qcacmn: Fix differences in downstream LL_STATS vendor command
Currently the vendor attributes qca_wlan_vendor_attr_ll_stats_set,
qca_wlan_vendor_attr_ll_stats_clr, qca_wlan_vendor_attr_ll_stats_get and
qca_wlan_vendor_attr_ll_stats_results for LL_STATS vendor command
are not in sync with the upstream code.

So, fix the differences and match downstream code for LL_STATS vendor
command with upstream code.

Change-Id: I373470e1217f7da82bb25b40e07ed96d1b1a1d6c
CRs-Fixed: 3489509
2023-05-13 07:19:13 -07:00
Venkateswara Swamy Bandaru
2d6091a62e qcacmn: Add EPCS module id
Add EPCS module id and initialize to default info
debug level.

Change-Id: Idec60fcab1bdef90660a24c54f6c7b09d0ddc2eb
CRs-Fixed: 3490401
2023-05-12 23:09:19 -07:00
Krishna Rao
4f26b0e43f qcacmn: Allow modification of ML Reconfig delete timer
Allow modification of ML Reconfig AP remove delete timer at non-AP MLD
even if the AP removal is already in progress. The standard does not
currently provide for modification of the delete timer countdown at AP
MLD. However, if the AP MLD does carry out such a modification in
scenarios such as those given below, the non-AP MLD would be out of
sync with the AP MLD. Hence, we allow this modification.

Scenarios:
- At our AP MLD, if non-Tx VAP removal is ongoing, and subsequently
removal of its Tx VAP is requested with Delete Timer smaller than that
of non-Tx VAP, then non-Tx VAP's Delete Timer gets overridden with
that of the Tx VAP (this is due to an existing standards limitation
which doesn't allow change of Tx VAP role).
- There could sometimes be an issue with AP MLD due to which it might
incorrectly prolong the countdown by some margin in situations such as
an intervening CSA operation, etc.
- Some future 802.11be draft change may (or may not) allow
modification of the delete timer. (We may not guarantee
interoperability between an AP MLD implementing a future draft and a
non-AP MLD implementing the current draft, but the current
implementation change contributes towards best-effort
interoperability).

Change-Id: I6abc7565a5822bb7206c873716f1e3fc6a04416e
CRs-Fixed: 3466313
2023-05-12 23:09:09 -07:00
Abhishek Singh
587f3af96b qcacmn: Optimize beacon/probe rsp logs
Optimize beacon/probe rsp logs, by printing the params when
their values are non 0. Thus reducing the logs size.

Also add the frame length in the logs.

Change-Id: I6cad77b6cdc4576804cdabd9f53235029e6cebd7
CRs-Fixed: 3490632
2023-05-12 23:08:59 -07:00
Namita Nair
2613f207e0 Revert "qcacmn: WAR for opt_wifi_dp feature to disable IPA(1)"
This reverts Change-Id: I7aad275f4d86a2ffc239f1fe343de31ec2988fad.

Change-Id: I875e8d15430c3f0a0f4bf10d275b203b24023a64
CRs-Fixed: 3483264
2023-05-12 16:39:36 -07:00
aloksing
d8e1a8418c qcacmn: keep non intesected phymode in scan db
scan db has intersected phymode. For BSS information via iwlist we need
non intersected phymode.

Change-Id: I62a4aea33a67ac12b5be5bcdd4a3fc4538056df9
CRs-Fixed: 3454700
2023-05-12 16:39:25 -07:00
Aditya Kodukula
d0badcb989 qcacmn: Add support to extract vdev_extd_stats event
In case of MLO connection, firmware sends each vdev's
status information using extended vdev stats event.
Add support in driver to extract it.

Change-Id: I95f2a96cb7034b5b070cc6f37a97591e01e5893a
CRs-Fixed: 3483730
2023-05-12 16:39:15 -07:00
Zhaoyang Liu
054a0fc1e0 qcacmn: reactive serializate pending command after active list is empty
This is to fix serialization pending command timeout during vdev stop.
For case that two vdev is up state, i.e. vdev 1 is going to stop state.
There is an active command is running, then all commands in serialization
pending or active list for vdev 1 are canceled, so this last active vdev 1
command can't callback to dequeue itself from pdev active queue, and it
also doesn't do operation to move pending command to active queue.
So now if there are still other commands which are for vdev id 2 in pdev
pending queue, no one will schedule this pending command to active list,
until any pending command is timed out.

Add change to move pdev ser pending command to active list if all active
vdev non scan commands are canceled.

Change-Id: Ie47c9aa8153078266307a7d0b6c4585e2af9ed50
CRs-Fixed: 3474552
2023-05-12 16:39:05 -07:00
Sai Rupesh Chevuru
1b317b0bf3 qcacmn: received packet matches with mld mac address drop it
In extap mode if the received packet matches with mld mac address drop it.
for non IP packets conversion might not be possible,
due to that MEC entry will not be updated, resulting loopback.

Change-Id: Ibec080b619e9b0a8068e1c90acbcc144d44d8f54
CRs-Fixed: 3485362
2023-05-12 13:18:47 -07:00
Venkateswara Naralasetty
10766fab5e qcacmn: skip unnecessary reg access for WCN6450
Enable/disable copy complete interrupt in HOST IE register and
clearing the interrupt status in HOST IS register is not required
for WCN6450 as it uses MSI and batch count/intr timer.

Change-Id: I2285651a75d01546498831e91705a989f7f60fd5
CRs-Fixed: 3470364
2023-05-12 13:18:37 -07:00
Karthik Kantamneni
3987bb28f6 qcacmn: Add support to get Rx contexts count for SOFTUMAC target
Add support to get number of Rx contexts for SOFTUMAC
based targets.

Change-Id: I71ee96e3230a198b82b0e633fbe67a8690097f74
CRs-Fixed: 3486660
2023-05-12 13:18:26 -07:00
Shiva Sankar Gajula
0ff3009672 qcacmn: Add support for reset PN value using ft roam peer command
Adding support for reset PN value using
WMI_HOST_PEER_FT_ROAMING_PEER_UPDATE peer command.

Change-Id: Ib486d09c80878d41efa299756e655d66babd825d
CRs-Fixed: 3490034
2023-05-12 05:04:09 -07:00
Rakesh Pillai
5b087aa295 qcacmn: Add API to get the cluster ID for a cpu
Kernel 6.0 and above has deprecated the use of
topology_physical_package_id() and instead of this
API topology_cluster_id() needs to be used to get
the cluster ID of a given CPU.

Add QDF abstraction API for topology_cluster_id().

Change-Id: I4ca555c016730afc6cac2a4bf55d9f48c6f4cae0
CRs-Fixed: 3488031
2023-05-12 05:03:58 -07:00
Rahul Gusain
ce53e06591 qcacmn: extract max number of NAN pairing sessions
Currently, there is no provision to identify that the driver supports
NAN pairing protocol. So, new kernel and new firmware will start
exchanging PASN frames without realization that old driver is loaded
and thus, frames will be drops in driver.

So, to fix this issue, firmware introduces new parameter in nan
capabilities to indicate host about pairing capability. Host driver
extracts the TLV to get nan capabilities and cache the max num of
pairing session.

Change-Id: I4153c7ec4d425294b0799122bf61e735184f0960
CRs-Fixed: 3492518
2023-05-12 05:03:47 -07:00
Aditya Kodukula
b223cb5534 qcacmn: Fix field-spanning issue in ptt_sock_send_msg_to_app()
Currently in the function ptt_sock_send_msg_to_app(), memcpy()
is used to copy data into multiple fields of the struct tAniHdr.
When FORTIFY_SOURCE feature is enabled, kernel warns of field-spanning.

To resolve this issue, assign a void pointer to the struct and use it
in memcpy().

Change-Id: I30311b063e735a89dfd38e029dacc80d6808a4af
CRs-Fixed: 3488513
2023-05-11 18:02:20 -07:00
Vijay Raj
12fbcdf042 qcacmn: Modify CM_NO_CANDIDATE_FOUND value in connect fail reason enum
In the enum wlan_cm_connect_fail_reason, the value of
member CM_NO_CANDIDATE_FOUND is modified to 1 in order
for value of members of the enum will begin from 1.

Change-Id: I3f4686b32cec92b45e03b30b4293b4571a3f01fe
CRs-Fixed: 3486473
2023-05-11 09:01:14 -07:00
Aman Mehta
c7a178e42f qcacmn: Add mesh and QCN flags in peer assoc
Set flags in WMI peer assoc to inform FW if node is
1. QCN Supported
2. Operating in Multi-AP mode

If node is 3rd party and operating in Multi-AP mode,
FW and uCode will change crypto register for each Rx/Tx from/to such nodes

Change-Id: If4cf9ec39fa11a90733df45fffa473a672643f8e
CRs-Fixed: 3488865
2023-05-11 06:32:16 -07:00
Pradeep Kumar Palraj
1a7ce50c83 qcacmn: Return error when key install fail
Low throughput is seen with interop clients when
set key is issued before wmi_peer_assoc command,
hence avoide key install before wmi_peer_assoc.

We are check here to verify the key install success
or failure.

Change-Id: I553a5ed01165354afc19885b4f62c13632908808
CRs-Fixed: 3274020
2023-05-11 06:31:59 -07:00
Venkateswara Naralasetty
81f874fc13 qcacmn: fix batch timer/count threshold register config
Fix the SRC/DST batch timer/count threshold register configurations.

Change-Id: I356fe72e6a2044a12c9e772ed043f2ee286d36c6
CRs-Fixed: 3483043
2023-05-11 06:31:48 -07:00
KARTHIK KUMAR T
3b082b0bf8 qcacmn: add recommended err/debug function
add recommended err/debug function

Change-Id: I8d564a155485be4b997ecd8ba8325e3e4d72d7b1
CRs-Fixed: 3490031
2023-05-11 06:31:37 -07:00
Yeshwanth Sriram Guntuka
428903aa33 qcacmn: Add DP descriptor types for direct link
Add DP descriptor types for direct link datapath
related memory prealloc pool.

Change-Id: I8c8be42b0530de39293ad8e45f47e16f90ea7767
CRs-Fixed: 3490102
2023-05-10 14:45:50 -07:00
Srinivas Girigowda
4eea6d6ea6 qcacmn: Interrupt masking for TxMon and RxMon
Interrupt masking for TxMon and RxMon.

Change-Id: I2bb8a9b029ef81c043066904f775adff043b7268
CRs-Fixed: 3415822
2023-05-10 11:51:43 -07:00
Srinivas Girigowda
0a089680ce qcacmn: Add Tx Mon configs to DP prealloc
Add Tx Mon configs to DP prealloc.

Change-Id: I34a480cdb59c9347e535e95972b6a342a8722047
CRs-Fixed: 3415819
2023-05-10 11:51:26 -07:00
Srinivas Girigowda
08ea5c2b80 qcacmn: Add support for local packet capture running
Add support for local packet capture running.

Change-Id: Id954c57a32210c180a8e0f9107e2469f96491173
CRs-Fixed: 3415816
2023-05-10 11:51:09 -07:00