Commit Graph

888 Commits

Author SHA1 Message Date
Karthik Kantamneni
c88b38afa1 qcacmn: Fix RBM id assignment for Rx buffers in Rhine
Currently RBM id is not assigned properly for RX buffers
in Rhine architecture. Fix this by assigning RBM id during
soc attach in Rhine.

Change-Id: I8f3a781bfaf81366417107f4bd3da61b142ca1e2
CRs-Fixed: 3573342
2023-08-01 20:30:36 -07:00
Santosh Anbu
d8509c4df7 qcacmn: Remove hex dump in monitor tlv processing
Hex dump in monitor descriptor processing is causing high
CPU utilization. Since it is not advisable to add prints/debug
in per packet processing, remove hex dump debug log.

Change-Id: Ic98c3608a468cf4665ea94b1ebee725ca7121545
CRs-Fixed: 3571491
2023-07-31 19:38:27 -07:00
Santosh Anbu
3f3d1f352c qcacmn: Remove debug logs in monitor TLV processing
Debug logs in per packet tlv processing is causing high CPU utilization.
Remove these debug logs.

Change-Id: I520b3a83c7a5cafefe6f2d25d14ea5c1b9816b11
CRs-Fixed: 3571491
2023-07-31 19:38:19 -07:00
Nandha Kishore Easwaran
72a6ff4b6e qcacmn: Fix tlv processing for Big endian mode
Fix tlv processing code for monitor mode in Big endian mode.
Changed all the 64bit tlv extraction apis and used 32 bit extraction apis.
This is needed in big endian mode since HW supports word swap option and
TLV has to be intepretted using 32bit extraction APIs.

TLV tag, userid and TLV len falls on the first 32 bit and hence using
both 32bit or 64 bit extraction APIs give same result.

Change-Id: I9b9ff78c79f21888964d405016c58c3b5988b254
CRs-Fixed: 3551002
2023-07-31 19:37:48 -07:00
KARTHIK KUMAR T
63bf6f5d07 qcacmn: Added code to include rx packet tlv hdr
Added code to include rx_pkt_hdr_tlv in
rx packet tlvs header

Change-Id: I0609cf94e3b53cf625f7c347d86e42fe815e452e
CRs-Fixed: 3563009
2023-07-26 10:52:45 -07:00
Srinivas Girigowda
70d7e0a2bc Revert "qcacmn: Debug patch for delay reg queue corrupt"
This reverts Change-Id:Ib14634fe31bfdae86aac6c89e5d65618ae5c753e.

CRs-Fixed: 3568037
Change-Id: I8426812fd071bf41a15e1ebb776beeb6da865a00
2023-07-23 17:09:19 -07:00
Yu Tian
f2211bb521 qcacmn: Debug patch for delay reg queue corrupt
Add ring_id check for potential srng pointer corruption.

Change-Id:Ib14634fe31bfdae86aac6c89e5d65618ae5c753e
CRs-Fixed: 3549490
2023-07-20 01:11:55 -07:00
Venkateswara Naralasetty
51ddb93d21 qcacmn: add periodic and host Tx/Rx stats support for WCN6450
Changes required to support periodic and host Tx/Rx stats for WCN6450.

Command to request and dump the host Tx/Rx stats,
iwpriv wlan0 txrx_stats <stats no> <mac_id>
mac_id: 0 - mac0(5 GHz), 1 - mac1(2 GHz)
        0 for single mac
stats no: 20 - TXRX_CLEAR_STATS
	  21 - TXRX_RX_RATE_STATS
	  22 - TXRX_TX_RATE_STATS
	  23 - TXRX_TX_HOST_STATS
	  24 - TXRX_RX_HOST_STATS
	  25 - TXRX_AST_STATS
	  26 - TXRX_SRNG_PTR_STATS
	  27 - TXRX_RX_MON_STATS
	  29 - TXRX_SOC_CFG_PARAMS
	  30 - TXRX_PDEV_CFG_PARAMS
	  31 - TXRX_NAPI_STATS
	  32 - TXRX_SOC_INTERRUPT_STATS
	  33 - TXRX_SOC_FSE_STATS

Change-Id: Ibda4d531c9074a24f8c39916b44d9e3c38f189ee
CRs-Fixed: 3485279
2023-07-13 00:42:11 -07:00
Nanda Krishnan
baf49c9f89 qcacmn: Tracking the ring util stats
Added serviceability changes to track ppe2tcl
and wbm2rel ring util stats

Change-Id: Ia154ae4914c47f010921eaed10b8a4dde50884bf
CRs-Fixed: 3537655
2023-06-27 21:48:54 -07:00
Sushant Butta
ade262ccac qcacmn: Fix tlv parsing for rx_evm details tlv
Fixed tlv parsing for rx_evm and rx_antenna
for QCN9224.

Change-Id: I9a24a0231289018e73c4dfa3c4f0dd1c79d6f84b
CRs-Fixed: 3485292
2023-06-23 01:39:05 -07:00
Venkateswara Naralasetty
39ed82e609 qcacmn: qcacmn: Add Monitor 1.0 support for WCN6450
Currently in monitor mode, links are released to WBM through the
SW2WBM_RELEASE ring and WBM will feed the links back to RXDMA
through the WBM2RXDMA_LINK_RING.

WCN6450 uses SOFTUMAC architecture where WBM is not present.
Hence the WBM2RXDMA_LINK_RING is repurposed to SW2RXDMA_LINK_RING
where host will directly release the links to RXDMA using this ring.

Change-Id: I110f607e38c4c2ab10eb1bd7b1f5a7bce2f03692
CRs-Fixed: 3493368
2023-06-16 15:03:02 -07:00
Aditya Kodukula
58e80d75bd qcacmn: Fix typographical errors
Fix typographical errors spanned over various files in cmn.

Change-Id: I9fcf3b7f9bb7d7dd406e6576a60aa4eb783c9ceb
CRs-Fixed: 3529628
2023-06-14 22:02:33 -07:00
Yeshwanth Sriram Guntuka
778c29b6ce qcacmn: Remove IPA related HAL srng ring id macro
Direct link refill ring HTT setup fails due to srng
ring id mismatch. IPA uses a max of two RXDMA_BUF
rings but the hal srng ring id has a max of 3 RXDMA
ring ids which is causing the ring id mismatch for
direct link refill ring.

The fix is to remove the addition IPA related hal srng
ring id and move the macros appropriately to make
it consistent for both IPA enabled and disabled
cases.

Change-Id: Ieb4bbf646f5f0360e4013ae3e235cc7368087731
CRs-Fixed: 3523851
2023-06-12 16:26:58 -07:00
Kannan Saravanan
9253c14181 qcacmn: Move TX 2.0 code under WLAN_PKT_CAPTURE_TX_2_0 macro for QCN6432
Move TX 2.0 specific code under WLAN_PKT_CAPTURE_TX_2_0 macro for QCN6432.

Change-Id: Id2d29a21c66df54b401b92e17adb396499c14cce
CRs-Fixed: 3520066
2023-06-08 05:09:18 -07:00
Venkateswara Naralasetty
f0348b8522 qcacmn: update wcn6450 hw srng table for CFR support
Add CFR related rings configuration to wcn6450 hw srng table.

Change-Id: I5088d5ba7759d96b64319ae6f1ee26255415b900
CRs-Fixed: 3519261
2023-06-07 13:58:59 -07:00
Aditya Kodukula
4cbabdad1c qcacmn: Fix typos in cmn
Fix typos spanned over multiple files in cmn.

Change-Id: I9886114cd9cde934e084d0977e6272f8dd04df76
CRs-Fixed: 3521888
2023-06-07 13:58:38 -07:00
syed touqeer pasha
131126e7b3 qcacmn: Add correct ring number offset for PPE2TCL ring
Target 6432 - Add the correct ring number offset for PPE2TCL ring.

Change-Id: I057fb9ea959078fb0cb49cb65d8600e7aa64f22c
CRs-Fixed: 3512321
2023-06-02 16:50:43 -07:00
Sachin Kohli
2c3744a897 qcacmn: PPEDS support for QCN6432
PPEDS support for QCN6432

Change-Id: I37ae6dc66eb29ccfe1f3e7bff3cc9c627e961782
CRs-Fixed: 3512941
2023-06-02 16:50:21 -07:00
Sachin Kohli
1d0a2d4996 qcacmn: FSE support for QCN6432
Added some support for FSE.

Change-Id: I55c64a15a3803b7999d61e6dc4e93adabd8111c8
CRs-Fixed: 3512941
2023-06-02 16:50:12 -07:00
Jinwei Chen
5e84f6fe25 qcacmn: use right TLV tag header length for peach
In monitor mode, TLV tag header length should be 4 bytes for peach,
fix it.

Change-Id: I78beca168add8626c0fa99bfa407101ce4d36b30
CRs-Fixed: 3512227
2023-06-02 16:49:12 -07:00
Adwait Nayak
8ba7bd7ab8 qcacmn: Hal specific changes for TXMON in QCN6432
Hal specific changes for TXMON in QCN6432

Change-Id: I33f60b4891fce0334b8f649f0066deafd1c5e322
CRs-Fixed: 3500892
2023-05-31 23:38:55 -07:00
Kenvish Butani
0df4b5eaea qcacmn: Optimize DP Rx Error Handling (Part-2)
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
4) Peer_id fix for MLO clients with security

Change-Id: I1c9e6e767bbf6565567d998ae8e1357398de5803
CRs-Fixed: 3486304
2023-05-24 05:19:41 -07:00
Venkateswara Naralasetty
09430f47e6 qcacmn: fix kernel null pointer dereference
Fix kernel null pointer dereference during dp_vdev_set_monitor_mode.

Change-Id: Ia17ebef71f4d7f8b038f52adcde17cc89aa14545
CRs-Fixed: 3501896
2023-05-21 04:04:55 -07:00
Srinivas Girigowda
30a6417487 qcacmn: Change logs to appropriate log levels
Change logs to appropriate log levels.

Change-Id: I5e0816105282fccad8d17440eee363803f31429e
CRs-Fixed: 3494141
2023-05-18 18:43:59 -07:00
Srinivas Girigowda
07bdb1114b qcacmn: Remove trailing comma/period from the DP logs
Remove trailing comma/period from the DP logs.

Change-Id: Ifdaf508157274c44f04e775c1883c4eaa2924c44
CRs-Fixed: 3492731
2023-05-18 18:42:28 -07:00
Srinivas Girigowda
48cf24b446 qcacmn: Remove trailing newline from the DP Logs
Remove trailing newline from the DP Logs.

Change-Id: Iaf54e57fb44cf7c15d82bd5c0ffb3fc7c3d04a2b
CRs-Fixed: 3492501
2023-05-18 18:42:08 -07:00
Aniruddha Mishra
ba55e0f2a8 qcacmn: Add Tx TLV Recording support
Add Tx TLV recording support for monitor 2.0
Also add support to control Rx and Tx TLV
recording

Change-Id: I27a0d2c9ea8bdfacd46e6b7188b45b08ed47bbcd
CRs-Fixed: 3422787
2023-05-16 11:43:14 -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
Srinivas Girigowda
5d8e550bb7 qcacmn: Add support for local packet capture start
Add support for local packet capture start and relevant changes.

Change-Id: I709e41e0be09cf73e93694efc59bfefbf51fe359
CRs-Fixed: 3415788
2023-05-10 11:50:28 -07:00
Srinivas Girigowda
980d883f07 qcacmn: Introduce HAL API to get phy ppdu id size
Introduce HAL API to get phy ppdu id size.

Change-Id: I125eb344787060336919fb361af032fddeb34526
CRs-Fixed: 3454206
2023-05-10 11:50:15 -07:00
Srinivas Girigowda
0419d28f6e qcacmn: Move TX 2.0 code under WLAN_PKT_CAPTURE_TX_2_0 macro
Move TX 2.0 specific code under WLAN_PKT_CAPTURE_TX_2_0 macro.

Change-Id: I20bb1e49a902ec085fbc3df6828fef94a7c577d6
CRs-Fixed: 3415780
2023-05-10 11:48:59 -07:00
Srinivas Girigowda
f5321447c2 qcacmn: Move RX 2.0 code under WLAN_PKT_CAPTURE_RX_2_0 macro
Move RX 2.0 specific code under WLAN_PKT_CAPTURE_RX_2_0 macro.

Change-Id: Ic07bde8868850b8889941fc9054ad988617b5296
CRs-Fixed: 3415779
2023-05-10 11:48:45 -07:00
Srinivas Girigowda
ec3b9bdbce qcacmn: Move cmn code under QCA_MONITOR_2_0_SUPPORT to TX/RX 2.0 macro
Currently QCA_MONITOR_2_0_SUPPORT macro is used for both TX and RX 2.0.
but on MCC side, only RX 1.0 is supported and as part of this feature
TX 2.0 need to be supported.
Enabling QCA_MONITOR_2_0_SUPPORT will enable both RX 2.0 and TX 2.0, but
to support RX 1.0 and TX 2.0, we need to separate out code under
QCA_MONITOR_2_0_SUPPORT to TX and RX 2.0 macro.

As part of this change, introduce separate macros for TX 2.0 and RX 2.0
and move the common code under both macros.

Change-Id: I7ef7e488800934291538a0bca9acd21e28901214
CRs-Fixed: 3415740
2023-05-10 11:48:32 -07:00
Venkateswara Naralasetty
4a88f7af4c qcacmn: change in static window mapping for WCN6450
Use qca6750 static window configurations for WCN6450.

Change-Id: I6b5eef653312474a99b07aab0112edf6211005aa
CRs-Fixed: 3483052
2023-05-07 13:25:19 -07:00
D Harilakshmi
82bd3d9009 Revert "qcacmn: Optimize DP Rx Error Handling (Part-2)"
This reverts Change-Id:	I760694073a06c1829f28e7e92cd1657560d8eb06

Change-Id: If1573653da912702bd343acfa42f9ae32a3f7844
CRs-Fixed: 3472220
2023-04-26 06:39:59 -07:00
Linux Build Service Account
7307b0f02e Merge "qcacmn: Initial changes for Pebble bring up" 2023-04-21 09:15:27 -07:00
Kenvish Butani
969c5bdf1f qcacmn: Optimize DP Rx Error Handling (Part-2)
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
4) Peer_id fix for MLO clients with security

Change-Id: I760694073a06c1829f28e7e92cd1657560d8eb06
CRs-Fixed: 3472220
2023-04-20 13:29:39 +05:30
Kannan Saravanan
299a136fb1 qcacmn: Initial changes for Pebble bring up
Add HAL layer target specific files for Pebble in cmn_dev.

Change-Id: I27d7db6ef4fb1b3ab66424d2a62d80cf3aedee9c
CRs-Fixed: 3351769
2023-04-20 12:13:29 +05:30
Prakash Manjunathappa
50c9ab56a1 qcacmn: Do not subscribe for MC/BC frames for kiwi/peach
MC/BC frames are routed to FW ring based on routing config for MC/BC
data as SRC: FW2RXDMA and DST: RXDMA2DFW.
Data offload features in FW will take care of routing the MC/BC frames
to FW in both active and low power modes.

Make this change only for kiwi/peach using hal ops.

Change-Id: Id8665261a512c9db3e808f95082ff82b47f01ade
CRs-Fixed: 3464036
2023-04-19 18:12:11 -07:00
Kannan Saravanan
bbd8a57b8e qcacmn: Initial changes for QCN6432 bring-up in HAL layer
Add device Id and target type checks for qcn6432 target
compilation.

Change-Id: Ibad1763b2d32929d81fe876571c37da9fdd15ab3
CRs-Fixed: 3351745
2023-04-19 14:20:13 -07:00
Kenvish Butani
711fb71599 qcacmn: Revert "Optimize DP Rx Error Handling (Part-2)"
This reverts the commit.

Change-Id: Ia1a304daa5d63a063bfc2d22b9b99ccad02af0e1
CRs-Fixed: 3472017
2023-04-19 05:43:51 -07:00
nobelj
45043b787f qcacmn: Add fix to increment NSS after parsing
NSS value derived from HW, need plus 1 to match the sniffer capture.
Added fix to increment NSS after parsing the TLV.

Change-Id: I1e0ef3949cefa1453290e400fa4a66000a3b5dea
CRs-Fixed: 3444508
2023-04-18 22:03:00 -07:00
syed touqeer pasha
5b0980f461 qcacmn: Check Tx halt during umac reset
1. Check Tx halt during umac reset and avoid halt if set already.
2. Perform SRNG disable only in case of umac reset

Change-Id: Id364a6460a64e83002b5c96e08031ad2a0bc8fd7
CRs-Fixed: 3459427
2023-04-14 01:54:13 -07:00
Prakash Manjunathappa
a5e00e2455 qcacmn: Add support for 4 byte TLV tag
Add support for 4 byte TLV tags for platforms like peach for which we
have 4 byts TLV tags.

Change-Id: Iebf48a6992c21246df3fb813b5d6ae418311f062
CRs-Fixed: 3460205
2023-04-10 13:19:52 -07:00
Basamma Yakkanahalli
30ff1d4085 qcacmn: Standalone sounding DBR support for CBF CV data to QCA5332 target
Increase the DBR ring to support DBR module
DBR_MODULE_CBF standalone sounding CV data
for QCA5332 target.

Change-Id: I4ab0741d92c7c7a32243173c87d022befa702399
CRs-Fixed: 3456418
2023-04-07 19:50:15 -07:00
Kenvish Butani
d0d9a987fc qcacmn: Optimize DP Rx Error Handling (Part-2)
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.

Change-Id: Ic8793ffcbeb2411c9b81fb32acae062e8a1f40cc
CRs-Fixed: 3362828
2023-04-07 09:13:49 -07:00
Ruben Columbus
035e4557da qcacmn: shift timer_thres by 3
setup to correct value by shifting intr_timer_thres_us
by 3 for interrupt timer to take less time.

Change-Id: I0eb799bf3a3443a7ca4a43512b7ec03444da81bc
CRs-Fixed: 3439468
2023-04-05 12:23:34 -07:00
Shwetha G K
63843ae368 qcacmn: Populate additional params to CFR info
HAL changes to populate agc gain, CFO, rx_start_ts, mcs_rate and
gi_type to CFR info.

Change-Id: I20b4ce1b8c065349106cd999054ff08c7f3521ec
CRs-Fixed: 3453631
2023-04-05 02:04:58 -07:00
Ruben Columbus
23fbd0d174 qcacmn: remove hal 9224v1
remove 9224v1 hal support and add 9224v1 crash if used

Change-Id: Icf22fa7b65d3d5b8eac44fd876316a4d35829756
CRs-Fixed: 3428599
2023-03-23 13:22:19 -07:00
nobelj
d1ddb7d4fe qcacmn: Add fix to receive response window ppdu
Received window ppdu are dropped in work queue context as it doesn't
have ppdu timestamp. Added fix to populate ppdu timestamp.

Change-Id: I3276284351f27ae2e8bfb787aa96fb031e4025ac
CRs-Fixed: 3439473
2023-03-22 05:58:47 -07:00