Commit Graph

17014 Commits

Author SHA1 Message Date
Shiva Sankar Gajula
5b5d4cb57a qcacmn: Handling MIC failures for QCN9224 target
For QCN9224 target, All the MIC failures are reported
as decrypt error from FW.

So, added changes to handle MIC failures for QCN9224
target .

Change-Id: I32e616e01e3cd6e76ef105d73fd8a87ce2c81cb9
CRs-Fixed: 3192749
2022-06-07 10:54:02 -07:00
Harsh Kumar Bijlani
de0d00288a qcacmn: Fetch per pkt stats from MLD peer for Link Peer
When user makes a request for stats using Link peer mac address,
then fetch per pkt stats from MLD peer for Link peer.

Change-Id: I64e0b10eaca82c87e7066d3ca1dbefad63a186a8
CRs-Fixed: 3208757
2022-06-07 10:53:57 -07:00
KARTHIK KUMAR T
816abb22a8 qcacmn: Add NULL check for pr_soc
Fix add for pr_soc NULL check

Change-Id: I3e48da3692a2d7eab28f9bd907a0ee682a35dae9
CRs-Fixed: 3200629
2022-06-07 10:53:51 -07:00
Paul Zhang
96b039f9f8 qcacmn: Correct the kernel-doc format
Correct kernel-doc format for the functions in file utils_mlo.h.

Change-Id: I5a91675867885d8fdf262c7ea7f98a09f9e2e539
CRs-Fixed: 3203893
2022-06-07 08:18:52 -07:00
Himanshu Batra
768250e291 qcacmn: Add support for telemetry agent stats
For telemetry agent, some more statistic support is required.
Hence, add support for telemetry agent required stats.

Change-Id: Ieb2210a4a5dfe6fa0a0dd46a85f2d9ae483bb746
CRs-Fixed: 3210797
2022-06-07 03:29:51 -07:00
Nandha Kishore Easwaran
422bbf322b qcacmn: Add tx peer filtering WMI command
Add WMI command for tx peer filtering. This command is needed to send
the mac address to FW for which tx monitor peer filtering is needed
to be done.

Change-Id: Ia141fba81ba240b7f4ca015eb9251e3485294bb6
CRs-Fixed: 3199493
2022-06-06 04:26:55 -07:00
Deeksha Gupta
45c39ea4b3 qcacmn: Update RNR IE as per D1.5
Update RNR IE as per 11be draft 1.5 specification.

Change-Id: I7b3e3d2017c2d7eedbba82d6591cdf93fd755b95
CRs-Fixed: 3210818
2022-06-06 04:26:48 -07:00
Yeshwanth Sriram Guntuka
f2ee56b2fc qcacmn: Add ini to set priority for TC ingress filter
Add ini support to configure TC ingress filter priority
value which would be used for TC based dynamic GRO.

Change-Id: I1742f4539353939e3a40ff4096b3f833f2029b12
CRs-Fixed: 3206817
2022-06-06 01:59:35 -07:00
Jithender Miryala
059313a9cb qcacmn: Create a workqueue to process the NOL timeout
The HR timer runs in hardIRQ context and tries to acquire a bh_spinlock
held by a SoftIRQ context, which leads to deadlock.

To fix this, create a workque and let the workque execute the timer
callback function.

CRs-Fixed: 3200600
Change-Id: I6e702acade6d4e1d75470339ead0e591e7b8e4d8
2022-06-06 01:59:28 -07:00
Srinivas Pitla
e89b339b23 qcacmn: Select assoc peer's psoc as primary UMAC
select assoc peer as primary umac,
1) if all links are from single PSOC
2) single link MLO connection

Change-Id: Ia38e6809ef7d0201a2267051b8b4bcec7b36547f
CRs-Fixed: 3203804
2022-06-05 23:54:06 -07:00
Srinivas Pitla
34c16f4118 qcacmn: AID manager fixes for MBSSID vaps
1) Do not free Tx VAP's AID manager, if AID manager of
   non-Tx vap and Tx vap doesn't match
2) Do not allocate AID manager for MLD vaps, if AID
   manager is already allocated

Change-Id: I08b19397540f364503eaa1c269c6d0679a9a9fc0
CRs-Fixed: 3212368
2022-06-05 12:38:13 -07:00
aloksing
ddad8e0543 qcacmn: Deregister stats handler before monitor pdev deinit
Module unload is getting trigered in between
Vap restart due to channel switch
while waiting in monitor module unload for 500ms VAPs are coming up.
And after wait, during monitor pdev deinit
HOST start receiving stats indication.
Monitor pdev is getting dettached while processing stats indication.

Move register/derester of stats handler to intr ops.

Change-Id: I821c144f54bfe78c567039ab57fcf1eac7cb4f46
CRs-Fixed: 3192980
2022-06-04 09:27:32 -07:00
sandhu
b3da23a1a9 qcacmn: Remove forward declaration of util_scan_get_he_6g_params
Remove forward declaration of util_scan_get_he_6g_params. This
declaration is not required and is resulting in compilation
issues.

Change-Id: I43ac0839fa2a17d6e91811643d3ceb72c925e92f
CRs-Fixed: 3210127
2022-06-03 23:39:20 -07:00
Rakesh Pillai
ae051ef432 qcacmn: Handle Status buffer done tlv for monitor mode
WIFIRX_STATUS_BUFFER_DONE_E tlv indicates the dma
to monitor status ring is complete. Currently this
tlv is unhandled and the logs are flooded with error
message for this TLV being unhandled.

Handle the status buffer done tlv to remove the
unnecssary logging onto the console.

Change-Id: Ie1ac6adf46092ba7bff3ee4a3262fc98c8a6eb3d
CRs-Fixed: 3208659
2022-06-03 19:39:32 -07:00
Kai Chen
8cace9cda9 qcacmn: Adding mlo timestamp offset to tsf for radiotap
Adding MLO timestamp offset reported from firmware to tsf time for
radiotap header.

Change-Id: I2947dacf6c37214e60d70fcb3df4a5f9897356ac
CRs-Fixed: 3211179
2022-06-03 13:47:38 -07:00
Shreedhar Parande
5f96fd74c9 qcacmn: Parse EML capability subfield in Common info for non-AP MLD
Parse EML capability sub field present in Common Info field of Basic
Multi-Link element from Association request send by non-AP MLD.

Add new API to get EML capabilities from the ML IE.
Update definitions for EML as per IEEE802.11be D1.5.
Store parsed EML capability in node to send these to Target.

CRs-Fixed: 3203322
Change-Id: Ib208ba2d8e86df7360656c1c844e4835a93cedc4
2022-06-03 11:39:20 -07:00
Adwait Nayak
3ebb459d03 qcacmn: Add length check for newly generated frame
Add boundary check for the newly generated frame per subelement.
It should not go beyond the original beacon frame length.

Change-Id: I6de5519052a47119ec0a294941244c1b277233fc
CRs-Fixed: 3194793
2022-06-03 07:58:13 -07:00
Devender Kumar
0fd34e472b qcacmn: Fix for netdev iface deregistration
IPA driver is not able to deregister the netdev iface
as the WLAN driver is unregistering the netdev before
giving event to the IPA driver, hence IPA driver is unable
to map the local iface mapping.
FIX is to pass the netdev interface id to IPA driver
so that IPA can get the correct netdev.

Change-Id: I6011bc01a56d90287e3a0f93b3cddf9e4b0fff9b
CRs-Fixed: 3165336
2022-06-03 04:41:32 -07:00
Devender Kumar
96d0dd12b0 qcacmn: Add new macro for net_dev iface_id
IPA driver requires netdev iface_id at client disconnect event
so that the IPA driver can unregister the local interface.
Fix is to pass the netdev iface id from wlan driver to IPA
at client disconnect event.

Change-Id: Idf79553ee2a9574bf8213e69c46229a3843fca84
CRs-Fixed: 3165336
2022-06-03 04:41:25 -07:00
Amir Patel
2f0a456ced qcacmn: Add sanity check to avoid out of bound memory access
Add sanity check to avoid out of bound memory access
for protocol and flow tag update in monitor ring

CRs-Fixed: 3206715
Change-Id: Ie326137db8a6c9c1ee1faab69627ecd5eb51ad3e
2022-06-03 01:52:11 -07:00
Aditya Sathish
0d8615a6ff qcacmn: Update ML per-STA profile IE search offset
Start searching for IEs in the multi-link per-STA
profile from the STA Profile field instead of the
STA Control field to avoid invalid checks that may
arise due to other fields in-between.

CRs-Fixed: 3199541
Change-Id: I0a0f5b6c83135974820d2870e00f6dcf9eab61fe
2022-06-02 09:44:04 -07:00
Amit Mehta
1507b1cde3 qcacmn: Add configurable threshold values
Introduce configurable threshold values to
increment MPDU retry count by transmit_cnt / threshold.

Change-Id: I1c039ff76854e18bea5a8d99d171936557d1c6bf
CRs-Fixed: 3210735
2022-06-02 06:49:34 -07:00
Vikram Kandukuri
8969fe6019 qcacmn: Adding telemery agent component
Adding telemery agent component.
CRs-Fixed: 3211061
Change-Id: I48efdf8a612162e02512819f8e0d242dfac7da3c
2022-06-02 05:22:12 -07:00
Amith A
6e9e767a8b qcacmn: Correct the kernel-doc of reg_set_ap_pwr_type
Append a '*' to the first line of kernel-doc of reg_set_ap_pwr_type.

Change-Id: I86bbd8bc6c9ce83d53c27e06b26aa54b3fd285dc
CRs-Fixed: 3208791
2022-06-02 01:31:00 -07:00
Subrat Mishra
120fb06e12 qcacmn: Add cdp api to get accumulated pdev tid stats
Add cdp api to get accumulated pdev tid stats along with per tid
total tid rx and tx stats.

Change-Id: I7862c4265f199d0588d8865c5ed97e06010dd79f
CRs-Fixed: 3207499
2022-06-01 14:01:31 -07:00
Harsh Kumar Bijlani
1049507d23 qcacmn: Get per pkt stats from MLD peer for primary link peer
Add support to get per pkt stats from MLD peer for primary link peer
only when user requests for link peer stats.

Change-Id: I6df0daa4a175cc5869012538294ed41ae2443e48
CRs-Fixed: 3203506
2022-06-01 05:11:27 -07:00
Divya R
33e3e1d6a8 qcacmn: Initialize the chan_params structure
chan_params structure is uninitialized, due to which variables
inside the chan_params structure have garbage values.
To avoid this, initialize the chan_params structure.

Change-Id: Ic09c0a2d24c2a1eac8f076c7bbd4d25d147370fd
CRs-Fixed: 3205502
2022-06-01 01:45:37 -07:00
Rakesh Pillai
5fd598fac0 qcacmn: Fix monitor status TLV parsing
Currently, for kiwi, the tlv parsing from monitor
status buffer stops when it encounters MPDU_START
tlv. This happens since the return value after the
parsing of MPDU_START is not one amongst the allowed
return values for the tlv parsing to be continued.

Add MPDU_START tlv parsing return value to the allowed
return values, in order to continue the parsing of tlvs
from monitor status buffers.

Change-Id: I51cfecb7df8d8055a37e1b898419ec322dad63db
CRs-Fixed: 3203708
2022-06-01 00:01:55 -07:00
Amir Patel
da53418537 qcacmn: Add WAR to skip multiple ring entries
Add WAR to skip multiple ring entries in case if DMA is not
done for more than one entry in monitor status ring

CRs-Fixed: 3206692
Change-Id: Id24deb18d173e521efda38716244f375a409d7f5
2022-05-31 11:08:32 -07:00
Chaithanya Garrepalli
8889b96325 qcacmn: Use same reo hash key for all SOCs in MLO
In case Multi chip MLO configure same hash key for
all SOCs in MLO. This change is needed to avoid
same flow traffic distributed to multiple REOs.

Change-Id: Ib6cde4ae32e58ef2d45c02d640c133458f5bfac5
CRs-Fixed: 3201978
2022-05-31 08:31:55 -07:00
Pavankumar Nandeshwar
304559ad0c qcacmn: Return correct value for peer isolation case
Return correct boolean values for peer isolation and
bss peer checks in intrabss forwarding.

Change-Id: Ib02645572aafdf4e4c9bc2e40b8b0fc72b90b343
CRs-Fixed: 3206611
2022-05-31 04:03:54 -07:00
Ripan Deuri
09a9870b96 qcacmn: Add CDP ops for enabling MPDU stats
Add CDP ops for enabling SAWF MPDU stats.

Change-Id: I07d1a143e843f885150a1fcc10a6d0554bd57aa4
CRs-Fixed: 3195257
2022-05-31 00:59:32 -07:00
Linux Build Service Account
3603943859 Merge "qcacmn: tx monitor base framework for tlv parsing" 2022-05-30 13:05:56 -07:00
nobelj
90ad48aa86 qcacmn: tx monitor base framework for tlv parsing
tx monitor base framework for tlv parsing.

Change-Id: Ia39b17b32406b655b77ddcddf2b5df981aa7c56b
CRs-Fixed: 3203043
2022-05-30 10:47:11 -07:00
Linux Build Service Account
cd3f260fe1 Merge "qcacmn: Add wmi changes to extract addba window size from mgmt tlv" 2022-05-30 10:37:56 -07:00
Linux Build Service Account
e689f475b5 Merge "qcacmn: Fix build error when DISABLE_MON_CONFIG is defined" 2022-05-30 10:37:55 -07:00
Aakanksha Doda
f420dce004 qcacmn: Add wmi changes to extract addba window size from mgmt tlv
Add wmi changes to extract addba window size from mgmt tlv

CRs-Fixed: 3156291
Change-Id: I09891ef15942d3a7d594dfa839b758a9d4a5ba78
2022-05-30 06:45:12 -07:00
Linux Build Service Account
200bad937f Merge "qcacmn: Add new API to fetch ML IE info" 2022-05-30 06:20:50 -07:00
Linux Build Service Account
a974aea3fd Merge "qcacmn: Move FISA FST table to CMEM on Kiwi" 2022-05-30 06:20:50 -07:00
Guisen Yang
370e3bd4e9 qcacmn: Fix build error when DISABLE_MON_CONFIG is defined
Fix below errors when the item DISABLE_MON_CONFIG is defined:
No return value for below two APIs:
dp_tx_mon_buf_refill() and dp_rx_mon_buf_refill()

CRs-Fixed: 3205083
Change-Id: If449616e30e75c23c7b25fb449a0ad8e501529aa
2022-05-30 05:16:42 -07:00
Nandha Kishore Easwaran
77f302907b qcacmn: Change tx mon ring sizes
Change tx monitor ring sizes and make minor fix when getting the
number of entries.

Change-Id: Iec458d88948556f7007d4fa33bf082c8ee089064
CRs-Fixed: 3206170
2022-05-30 03:56:22 -07:00
Pavankumar Nandeshwar
5885ff85be qcacmn: Limit the desc pools limit avoid crossing cc ppt max entries
Limit the desc pools such that the max ppt entries
do not cross limit for the hardware cookie conversion.

Change-Id: I9149b20bea0d72b466ef8c3e2ee9c0b536ffe24e
CRs-Fixed: 3201792
2022-05-29 04:46:10 -07:00
Linux Build Service Account
db624d1224 Merge "qcacmn: Add function to calculate hardware Tx delay" 2022-05-27 20:37:32 -07:00
Paul Zhang
aeacfe3922 qcacmn: Add new API to fetch ML IE info
In order to provide the info about common info len and BSS
param change count, add API util_get_mlie_common_info_len()
and util_get_bvmlie_bssparamchangecnt().

Change-Id: I0f5fea2265cbb8f1df265542af7009d624a0129b
CRs-Fixed: 3202491
2022-05-27 19:37:23 -07:00
Prakash Manjunathappa
1684251d1f qcacmn: Move FISA FST table to CMEM on Kiwi
Add support to move FISA FST from DDR to CMEM, enable it for Kiwi
Adding CMEM support for FISA FST includes
1) Reserving CMEM memory space FISA FST
2) Add HAL macros for CMEM flow search entry

Change-Id: I45fc91a86c1ac89d3d95b246e26ea981314425a8
CRs-Fixed: 3199250
2022-05-27 19:37:16 -07:00
Ripan Deuri
74458d4542 qcacmn: Add function to calculate hardware Tx delay
Define a new function to calculate HW delay so that same logic
can be used to calculate delay by other modules.

Change-Id: Id3740bcaa2cd558b89ab02d8e88d5947eb5997b1
CRs-Fixed: 3198305
2022-05-27 18:06:34 -07:00
Linux Build Service Account
13f8bf5333 Merge "qcacmn: Disable 11BE and MLO feature support" 2022-05-27 17:45:16 -07:00
Linux Build Service Account
94d3a26340 Merge "qcacmn: Don't allow power mode VLP for indoor AP" 2022-05-27 17:45:14 -07:00
Linux Build Service Account
0fadefe80a Merge "qcacmn: Move reg_set_ap_pwr_type function under CONFIG_BAND_6GHZ" 2022-05-27 17:45:13 -07:00
Sandeep Puligilla
bfe1e87b25 qcacmn: Disable 11BE and MLO feature support
Disable 11BE and MLO feature support.

Change-Id: I6e9d40c718929c8e47f7ead4fd1333420dd850c7
CRs-Fixed: 3208148
2022-05-27 16:12:16 -07:00