Commit-Graf

20126 Incheckningar

Upphovsman SHA1 Meddelande Datum
Linux Build Service Account
288f8c09ea Merge "qcacmn: Add DP rings to SSR dump" 2023-09-22 01:14:07 -07:00
Linux Build Service Account
bd7db3b28b Merge "qcacmn: Add Extended MLD Capabilities And Operations in Basic ML IE" 2023-09-22 01:14:01 -07:00
Linux Build Service Account
771b5ac7a1 Merge "qcacmn: Get new scan capability" 2023-09-22 01:13:58 -07:00
Linux Build Service Account
0ad872defa Merge "Revert "qcacmn: Trigger recovery when WMI command is sent in wow mode"" 2023-09-22 01:13:57 -07:00
Linux Build Service Account
926af59b3c Merge "qcacmn: Add support to update MCAST stats for STA mode" 2023-09-22 01:13:56 -07:00
Linux Build Service Account
5c88ee151f Merge "qcacmn: Add new line for better display in dp stats" 2023-09-22 01:13:55 -07:00
Linux Build Service Account
eb325cb456 Merge "qcacmn: Get num desc from pool element count field" 2023-09-22 01:13:54 -07:00
Linux Build Service Account
e69d7ab401 Merge "qcacmn: Avoid excessive logging in ath procfs read/write ops" 2023-09-22 01:13:53 -07:00
Linux Build Service Account
5ee9a0b820 Merge "qcacmn: Add OCI IE element id extension" 2023-09-22 01:13:52 -07:00
Linux Build Service Account
3668c4e7a7 Merge "qcacmn: Avoid alloc and init of tx desc pool for NSS offload case" 2023-09-22 01:13:51 -07:00
Linux Build Service Account
cad17a75c9 Merge "qcacmn: Set rx_hw_stats NULL and add NULL check for rx_hw_stats" 2023-09-22 01:13:50 -07:00
Linux Build Service Account
035cb4934b Merge "qcacmn: Add code to solve the memory leak issue" 2023-09-22 01:13:49 -07:00
Linux Build Service Account
56346417b7 Merge "qcacmn: Rectify macro for Reconf ML IE STA Control size" 2023-09-22 01:13:48 -07:00
Vijay Raj
30dd1e08d6 qcacmn: Modify diag version for datapath diag logging event
Modify diag version for logging band info and packet
direction as part of data path event logs.

Change-Id: I5ce4a772262797072e93fce5cdff317c8686ee7e
CRs-Fixed: 3617279
2023-09-21 17:57:56 -07:00
Gaurav Saini
b64de0cf4a qcacmn: Handle RX exception from IPA on WDS-EXT netdev
When WDS_EXT feature is enable, Host needs to redirect
the data packets to WDS extended netdevice.

Change is added the support for forwarding the RX packets
when received from IPA as an exception by deriving the
correct netdevice interface.

Change-Id: I083a1acc72023f3ebe6ea36ec05a5706f89c16bc
CRs-Fixed: 3597357
2023-09-21 17:57:45 -07:00
Shashikala Prabhu
f58bde59f4 qcacmn: Print the timestamp of FW_HANG command and Tx completion
A customer has reported an issue regarding the FW not asserting when it
receives the WMI_FORCE_FW_HANG_CMDID from the host. We need to confirm
whether the FW actually receiving the command or it is stuck in the WMI
command queue because it’s full.
To do this, adding some prints along with the timestamps in the WMI command
path and WMI command Tx completion path.

Change-Id: Ib4d6423365a150f91597a9d83ab8a85a053de777
CRs-Fixed: 3598136
2023-09-21 17:57:34 -07:00
Jeevan Kukkalli
bafd3ffd85 qcacmn: Use page frag cache to allocate page fragments
Use per pdev page frag cache to allocate page fragments
to efficiently use memory.

Change-Id: I8a16175ac72d56bcd9783ff0590710aa779454cb
CRs-Fixed: 3611781
2023-09-21 17:57:24 -07:00
Manikanta Pubbisetty
8993389ed1 qcacmn: Allocate buffers from WBUFF for fastpath CEs
Currently, buffers attached to fastpath CEs are not being allocated
from WBUFF. Since the buffers attached to the fastpath CEs are
re-usable in nature, allocating such buffers from WBUFF will have
added benefits like allocating from custom page frag cache which
reduces the memory used by the RX buffers.

Therefore, allocate RX buffers for fastpath CEs from WBUFF module.

Change-Id: Iaa913042473d60b184a767ece934bb9063ff4a7e
CRs-Fixed: 3581533
2023-09-21 17:57:14 -07:00
Priyadarshnee Srinivasan
d45510b2bf qcacmn: Fix the oplass cfi mismatch in AFC request
In this Change-ID I9e72c960fefe6fbdc106bb83fb240d84d8522b80, the
80P80 opclass is excluded if the device does not support 80P80
mode of operation. The exclusion of 80P80 opclass is done only
in the AFC request size calculation. In
reg_dmn_fill_6g_opcls_chan_lists(), 80P80 CFIs are added in the
opclass index of 320 MHz. Hence, 320 MHz opclass (137) contains
cfis 7, 23 (which is actually 80P80 CFIS) and this request is sent
to the AFC server. Since, the AFC server does not support 320 MHz
SP operation in CFIs 7, 23, it does not return opclass 137 in the
AFC response. Hence, AP is unable to come up on 320 MHz in SP
power mode.

To fix this issue, exclude 80P80 CFIs in
reg_dmn_fill_6g_opcls_chan_lists() API as well if the device does
not support 80P80 mode of operation.

Change-Id: I3114f52c45f575ba3693dadc0d2a3d42ed513f68
CRs-Fixed: 3593497
2023-09-21 14:36:36 -07:00
Amit Mehta
cf269aa28d qcacmn: Add hif and CE rings to SSR dump
Add hif and CE rings to SSR dump

Change-Id: I6a859f46c9a8cf5813ce26a163b30286969edf4a
CRs-Fixed: 3604906
2023-09-21 14:36:26 -07:00
Amit Mehta
34d88f5bfc qcacmn: print vdev id in failure case
Currently only peer mac address is logged if
failed to find peer, there is no log for vdev id.
If caller has passed wrong vdev_id from current
error print one can not identify the issue.

So to fix the issue add vdev id to error log
to check if vdev_id was passed correctly.

CRs-Fixed: 3616476
Change-Id: I3c500784e744f37dd8a1a2a7b84c7b94baf13149
2023-09-21 14:36:15 -07:00
Amit Mehta
4be2141852 qcacmn: Add fisa table to ssr dump
Add fisa table to ssr dump

Change-Id: Iebf98bfbcb990d21498e1a1946ebc8a0e0b31410
CRs-Fixed: 3604904
2023-09-21 14:36:03 -07:00
Krishna Rao
8dec8f1589 Revert "qcacmn: Protect the Transition Timeout D3.0 changes under D3.0 macro"
This reverts Change-Id I81555fe179a9bba9d871867c8544b566676b0314.

Reason for revert: IEEE802.11be draft 2.0 support has been deprecated.
Revert the commit in order to remove compile time support for 11be
draft 2.0 based EML Capability Transition Timeout subfield value of
11. This is a planned reversal since the compile time support was
intended to be a temporary facility for assisting in the transition to
11be draft 3.0.

CRs-Fixed: 3618130
Change-Id: I5f3a6b343d375184bd6cc7545af8918a3de27fac
2023-09-21 08:36:32 -07:00
Amit Mehta
68f9c374dc qcacmn: Change QDF_MAX_AVAILABLE_CPU value
Currently QDF_MAX_AVAILABLE_CPU value is 8 for QCA_CONFIG_SMP
case, This hard coded value can result in out of bound issue
if available CPUs are greater than 8.

So to fix issue define QDF_MAX_AVAILABLE_CPU value to NR_CPUS.

CRs-Fixed: 3618754
Change-Id: Ic493aac48ac4a4d2fd983a294d45d86bb062fb61
2023-09-21 08:36:20 -07:00
Adil Saeed Musthafa
1737ed366e qcacmn: Add _IS_ML flag attribute to the ADD_STA_NODE QCA vendor command
Add an attribute QCA_WLAN_VENDOR_ATTR_ADD_STA_NODE_IS_ML to the
ADD_STA_NODE command. If this attribute is set, it implies that the node
being added is an MLD node.

Change-Id: I5a8f7248847d14d87116592f0a6de3952aee8664
CRs-Fixed: 3594263
2023-09-21 00:00:29 -07:00
Srinivas Pitla
f1bb50be1b qcacmn: FT over DS association support
Add support for MLD MAC address table to MLD.
This MLD address table allows API to add/delete/find entries by MLD MAC
address. This framework would be used for implementing FT over DS,
where Assoc request is received by AP without receiving Auth request.

Change-Id: I3dbc4c0507f2113d2c0cc5e58f41d69243a4cfc8
CRs-Fixed: 3608944
2023-09-20 23:59:58 -07:00
Aditya Kodukula
7c2ddd6c3e qcacmn: Hide 4th and 5th bytes of MAC address
Currently in the driver, we hide 2nd, 3rd and 4th bytes of the
MAC address in GKI builds. Since 2nd and 3rd bytes are needed for
debugging, hide only 4th and 5th bytes of the MAC address.

Change-Id: Ia432bb0d40e0a09b56e581f192a810e727127d3a
CRs-Fixed: 3616774
2023-09-20 20:10:21 -07:00
Vijay Raj
cabdbfa0c8 qcacmn: Add API to populate parameter for connecting event logging
Introduce API to populate parameter for connecting event
logging in order to be printed after STA INFO
event.

Add wlan_cm_is_first_attempt() api in order to
restrict the logging of STA INFO and connecting
event to first connection attempt.

Change-Id: Ica4253eea71ba72ea5176f733402d0758797463b
CRs-Fixed: 3599759
2023-09-20 20:10:10 -07:00
Amit Mehta
0b0fde8706 qcacmn: Add DP rings to SSR dump
Add DP rings to SSR dump

Change-Id: If1d1fe0a66a0f836bd5344b14ba4187e58921568
CRs-Fixed: 3604903
2023-09-20 07:21:36 -07:00
Neha Bisht
acd794ba1c qcacmn: Avoid alloc and init of tx desc pool for NSS offload case
Avoid alloc and init of tx desc pool for NSS offload case

Change-Id: I16a06ce9d15e56e04692c9032caf04df8f477306
CRs-Fixed: 3619837
2023-09-20 17:28:33 +05:30
Neha Bisht
7eb942e290 qcacmn: Get num desc from pool element count field
Get num desc from pool element count field

Change-Id: I14104a89d3d6ca3af6c511ee2c7ce4708b2c36e6
CRs-Fixed: 3618036
2023-09-20 04:55:10 -07:00
Yu Wang
8aa054e666 qcacmn: add fields to record transmit timestamp in nbuf cb
Add field 'u.tx.pa_ts.ts_value' to store the driver ingress
timestamp, and field 'u.tx.dev.priv_cb_m.flag_ts_valid' to
indicate whether 'u.tx.pa_ts.ts_value' is available or not.
Both fields must be cleared before fragment mapping, to
avoid overlap with the filed 'u.tx.pa_ts.paddr'.

Change-Id: I645c3c27b0c519417f86e6346f4f018b8d87d701
CRs-Fixed: 3560477
2023-09-20 04:15:55 -07:00
Amit Mehta
9cdb66d169 qcacmn: Set rx_hw_stats NULL and add NULL check for rx_hw_stats
dp_request_rx_hw_stats allocates memory to rx_hw_stats
and dp_rx_hw_stats_cb frees the memory. There can be case
that dp_request_rx_hw_stats is timed out and host
receives event from HW, if pending_tid_stats_cnt is 1
in that case rx_hw_stats will be freed from dp_rx_hw_stats_cb.
In case of race between request timeout and REO event
dp_request_rx_hw_stats will try to access the rx_hw_stats in
request timeout case which can result in use after free issue.

To fix the issue set rx_hw_stats = NULL in event callback
and add NULL check for rx_hw_stats before accessing.

CRs-Fixed: 3618526
Change-Id: I5dec8a1f94d309b5482f766e94fe5fd831a689d3
2023-09-20 02:23:01 -07:00
KARTHIK KUMAR T
b17821939a qcacmn: Add new line for better display in dp stats
Add new line for better display in dp stats

Change-Id: Ia561a1a654acbbcce93bb605ef95c60fdf6f5454
CRs-Fixed: 3613410
2023-09-19 23:10:22 -07:00
Amit Mehta
3c0448206e qcacmn: Add support to update MCAST stats for STA mode
Currently host does not maintain TX completion stats for
MCAST frames separately for STA mode.

Add support to update MCAST stats for STA mode.

CRs-Fixed: 3608640
Change-Id: Ia28a4cd332783a6767704cd0c479235ff27ddd8b
2023-09-20 11:17:10 +05:30
Shashikala Prabhu
5ac8175db3 qcacmn: Use the correct data type to print the time value
The timestamp values in umac reset context saved using uint64_t data type.
Hence, use '%llu' to display these values.

Change-Id: Ifd1069d0d8fdb9c6e7d91bc087d064ef11e3aec4
CRs-Fixed: 3613628
2023-09-19 22:34:16 -07:00
Jianmin Zhu
e5f945ccce Revert "qcacmn: Trigger recovery when WMI command is sent in wow mode"
This reverts Change-Id: I65efe5601e15055c5407f085e1fdcae5b28d6b81.
Its okay to fail send request instead of triggering crash recovery.
Triggering self recovery is only for fatal errors which can’t be
recovered without doing SSR.

Change-Id: I59532074c361bba4412ceb66f3f0e1e99d73bf06
CRs-Fixed: 3617795
2023-09-19 17:21:37 -07:00
Neha Bisht
012eaa6624 qcacmn: Handle release_src FW packets for ultrafast or ppeds paths
Handle completion of packets with release source as FW even if
ultrafast path flag FASTPPATH_SIMPLE or ppeds flag is set.

Change-Id: I3d6a4bf23000d2ccf0a1a8546a9db3dc63a793e6
CRs-Fixed: 3616109
2023-09-19 12:16:55 -07:00
Huashan Qu
8b628acc7f qcacmn: Add process for CONFIG_ARCH_STACKWALK defined condition
When CONFIG_ARCH_STACKWALK is defined, tracing threads function
qdf_print_thread_trace() will do nothing which is wrong.

Fix is to add process for function qdf_print_thread_trace() when
CONFIG_ARCH_STACKWALK is defined. It's the similar implementation
as 'Change-Id: I99643e1b93251de7453f511d13f5a4a39c56f99c'.

Change-Id: I199c3401e08cf91118106959d16c378fa038e3ac
CRs-Fixed: 3618369
2023-09-19 12:16:44 -07:00
Jianmin Zhu
dfe6f3cf0a qcacmn: Fix SCAN RANDOMIZATION failed for connected state
When F/W triggered roaming and wpa supplicant reassoc happen back to back,
disconnect may happen at last, but set send_disconnect flag of connect rsp
to true for last candidate, not for first candidate.
with Change-Id: I850c20cdfeb0c8423d074094f97c83599e43b409, first candidate
connect rsp is sent to kernel, kernel connected state isn’t cleared,
so SCAN RANDOMIZATION is always blocked later.

To fix it, copy send_disconnect flag of connect rsp from last candidate
to first candidate, then disconnect event of first candidate will be
sent to kernel to clear connected state, SCAN RANDOMIZATION won't be
blocked.

Change-Id: Ib7c0ec5d9b8e99de8f2548718f12ecddc94c792e
CRs-Fixed: 3615898
2023-09-19 12:16:33 -07:00
Krishna Rao
67aef668a0 qcacmn: Rectify macro for Reconf ML IE STA Control size
The macro for size in octets of STA Control field of Per-STA Profile
subelement in Basic variant Multi-Link element Link Info field was
being used for a similar purpose in Reconfiguration variant Multi-Link
element. Rectify this to use the correct corresponding macro for
Reconfiguration variant Multi-Link element processing.

CRs-Fixed: 3618434
Change-Id: I05f0a2f6586f5378fbb9f4dd3422a70031fc4729
2023-09-19 10:07:04 -07:00
Lin Bai
f2e5ceb88e qcacmn: Avoid redundant register read
In hal_write32_mb_confirm_retry(), hal_read32_mb() invoked
after hal_write32_mb_confirm() to confirm whether the write-op
executed successfully, which is not necessary in case it was
already confirmed in hal_write32_mb_confirm().

Avoid such redundant register read, if it is confirmed already.

Change-Id: Ib7c0ec5e9b8e99de8f2548718f12ecddc94c792e
CRs-Fixed: 3617529
2023-09-19 02:28:46 -07:00
aloksing
37f00a180c qcacmn: Add Word mask MPDU END TLV for monitor
Receiving MPDU end TLV length as 0
because TLV compaction is enabled and
wmask for mpdu end tlv is set to 0.

Adding word mask for MPDU END TLV.

Change-Id: If065cbf19f979734123a433e467a8a9bb8a1013a
CRs-Fixed: 3613053
2023-09-19 02:28:35 -07:00
Pavankumar Nandeshwar
50089ddecd qcacmn: Handle SG packets in null queue path for KIWI
Handle scatter gather packets in null queue path
for KIWI platform

Change-Id: I3ae3fb20bdddf8b8bf283982772205072dd20bc1
CRs-Fixed: 3609032
2023-09-18 20:29:00 -07:00
Neha Bisht
2e13c17be4 qcacmn: Add API to fetch ast entry by mac and ast type
Add API to fetch ast entry by mac and ast type

Change-Id: Ib8cfa5c269fd10c149804d02fcfae35e88c2a53f
CRs-Fixed: 3614965
2023-09-18 15:32:33 -07:00
Aravind Kishore Sukla
77cbd24eb2 qcacmn: Add check for rf_test_mode to connect in MLO open mode
Add check for rf_test_mode to connect in MLO open mode

Change-Id: Ie23b2c949497fb8f473fe772d68e85654d1baa7c
CRs-Fixed: 3611147
2023-09-18 15:32:23 -07:00
Jinwei Chen
643e1be5db qcacmn: use rssi_comb_ppdu for sniffer rssi
Use rssi_comb_ppdu of TLV WIFIPHYRX_RSSI_LEGACY_E
as RSSI reported in monitor mode on KIWI and HSP.

Change-Id: If9d0e5645c12874af32e43dae596602e446a44b0
CRs-Fixed: 3609169
2023-09-17 19:20:34 -07:00
Neha Bisht
29b42e6ee2 qcacmn: Add hlos_tid_override feature in fast_path for be
Add hlos_tid_override feature in fast_path for be

Change-Id: Ib9d0015993b9c84e047e12cb47dd92eebb84508e
CRs-Fixed: 3613823
2023-09-17 02:36:39 -07:00
Jinwei Chen
65fdbbce9a qcacmn: skip monitor reap timer if irq is enabled
For CFR test, monitor reap timer will start, meanwhile
irq for monitor status ring is also enabled, these two will
conflict and access mon_pdev->rx_status_q in the same time,
skb double free issue is reported.

If irq for monitor status ring has been enabled, skip to start
monitor reap timer which is unnecessary.

Change-Id: Ic015d370cb80604d7e4c261054ad529b64edca25
CRs-Fixed: 3614097
2023-09-17 02:36:28 -07:00
Aasir Rasheed
52662b6274 qcacmn: Prevent key install before receiving from user space
To prevent key installation in firmware before receiving the key from
user space. Currently, host receive the key in one thread
while simultaneously installing keys in a scheduler thread.

This change aims to resolve the synchronization issue by allowing key
installation only in one thread.

Change-Id: Ib5772cd2d0ed470756a4222aa9e11c356390f014
CRs-Fixed: 3591663
2023-09-16 07:46:23 -07:00