Wykres commitów

651 Commity

Autor SHA1 Wiadomość Data
nobelj
9e0ab8e096 qcacmn: Add tx monitor flush/drop/truncated handling
Add support for tx monitor flush/drop/truncated handling
and few minor fixes from txmon

CRs-Fixed: 3158502
Change-Id: Ic13476984cd591a381941cfa1501307e9cca2b5a
2022-03-29 14:11:56 -07:00
Jinwei Chen
247d541b4f qcacmn: Get Phy address for HW CC exception case
Even if HW cookie conversion is enabled on KIWI, there is some
case HW cookie conversion might not be done by HW, check the cookie
conversion done bit and get Phy Address accordingly.

Change-Id: I4ee7ed9776086812774637f07da1e4504898c3c4
CRs-Fixed: 3153433
2022-03-24 08:01:46 -07:00
Amir Patel
3b816d7013 qcacmn: Fix monitor dest srng init in case of splitphy
1. pass appropriate pdev_id as ring_num for srng init
2. Increase max rings for monitor destination rings

CRs-Fixed: 3152722
Change-Id: I36aa2f4e8e5d7fa41ee90a39593cbb8cdf86ec44
2022-03-23 03:32:22 -07:00
Rakesh Pillai
b68fd9ba67 qcacmn: Disable TX STATUS ring for Kiwi
Kiwi target does not used TX status ring.
Hence disable the tx status ring for Kiwi.

Change-Id: If3a39a0017a884bee2320188621b1f05e0c6d568
CRs-Fixed: 3150815
2022-03-21 20:51:04 -07:00
Rakesh Pillai
f15646c12b qcacmn: Disable TX cmd credit ring for Kiwi
Kiwi target does not used TX cmd credit ring.
Hence disable the tx cmd credit ring for Kiwi.

Change-Id: Ibd5fe2905a7362ea2ab89e65d77c7aea6ab259ee
CRs-Fixed: 3150814
2022-03-21 20:50:58 -07:00
Harsh Kumar Bijlani
ff6dd1fab7 qcacmn: Update PPDU specific fields in Rx monitor HAL parsing
Update PPDU specific fields in Rx monitor HAL parsing.
Also correct the offset to be used for user info in EHT_SIG_HDR.

Change-Id: I9dd133d3617754475f097b54b6e1e460f2e67baa
CRs-Fixed: 3153475
2022-03-21 07:03:29 -07:00
Amit Mehta
d2199b7a99 qcacmn: Set default value for REO dest ctrl register
Currently in some case we are receiving non error packets on REO2TCL
ring, which is causing issue.

Fix is to set DEST_RING_MAPPING_0 to SW1 for REO dest ctrl
register, So that non error packets with reo_destination_indication
with 0x0 in the reo entrance ring will be routed to SW1 ring.

Change-Id: I67f78f35e7dba899943307902d99d0325a60498f
CRs-Fixed: 3150186
2022-03-17 07:25:12 -07:00
Neelansh Mittal
ea3efe6a60 qcacmn: Call HTT RxDMA and RxOLE PPE cfg API
Add a separate APIs to configure RxDMA and RXOLE
configuration to enable the PPE based routing.

Change-Id: I95b8fbb361402bc04fc1f38aa8b0dbc6f99f4f06
CRs-Fixed: 3147720
2022-03-15 00:11:19 -07:00
Wu Gao
62706fd667 qcacmn: Correct registers when populate cfr information
Correct registers when populate mcs & gI parameters to cfr_info for
KIWI.

Change-Id: I323df60ec6e30541f85032a7affaade0e1dca177
CRs-Fixed: 3121694
2022-03-15 00:10:53 -07:00
Prakash Manjunathappa
61178a761e qcacmn: Make num REOs and rx_threads depend on dp_reo_rings_map
Make 1:1 dependency on num REOs and rx_thread. Keep num rx_thread
dependent on rx REO rings, 1 rx_thread for each rx REO ring.
Controlled via INI dp_reo_rings_map.

Change-Id: I7c199226cfa3f173ea328d71075816b8eb9ba91f
CRs-Fixed: 3048260
2022-03-14 22:31:21 -07:00
Pavankumar Nandeshwar
fb2b00a1b9 qcacmn: Fetch phy addresses for wbm release ring descs
Fetch phy addresses for wbm release ring descs
in the cookie conversion enabled case

Change-Id: I420dc395bfa7b783dfed98b7258e7c0f0728e543
CRs-Fixed: 3146766
2022-03-09 21:34:31 -08:00
Rakesh Pillai
00dcb987ed qcacmn: Fix the detection of non-ofdma packets from USIG header
Currently the detection logic for non-ofdma packets based
on the ppdu_type_comp_mode and ul_dl is incorrect.

Fix the logic to detect non-ofdma packets from USIG header.

Change-Id: Ic029a2fea948595157146e4105337d02d2e5ed43
CRs-Fixed: 3143088
2022-03-07 03:44:11 -08:00
Amir Patel
b37c8d9550 qcacmn: Handle empty, flush and truncated ppdu in RxMON
In case of empty HW descriptor, sw cookie is not valid.
Instead, HW reports ppdu_drop_cnt, mpdu_drop_cnt and
tlv_drop_cnt.
Do not process sw desc, if it's empty HW desc indication.

In case of flush and trucanted PPDU, status buffer need to be discard,
added handling for same.

Change-Id: I1219f71645072bb9e0e80ff271fa354f305c7961
CRs-Fixed: 3144525
2022-03-07 02:16:44 -08:00
Jia Ding
d40b388d2f qcacmn: Mark first packet after wow wakeup
Add feature support to tag first packet that wakes up HOST from WoW.

rx_pkt_tlv.rx_msdu_end.reserved_1a field is used by TARGET to meet
such request.

Change-Id: I3d37e13e8cff49bc4f622d3070a19e4c4be56417
CRs-Fixed: 3137621
2022-03-03 07:22:05 -08:00
aloksing
7148dfedf8 qcacmn: Handle enhanced stats from Rx monitor path in Waikiki
Update enhanced stats from Rx monitor path in Waikiki.
Populate mpdu_retry_cnt, sw_peer_id, mpdu_ok_byte_cnt and
mdpu_err_byte_cnt from PPDU_END_USER_STATS TLV.
Fix KW issue.

Change-Id: I055ff84f6304ba71b09a9a75b8420183ab6e9d8a
CRs-Fixed: 3134900
2022-03-03 04:56:34 -08:00
Amir Patel
f17d789fa6 qcacmn: Add Waikiki monitor HAL processing
Add Waikiki monitor HAL processing

CRs-Fixed: 3073467
Change-Id: I2b1768b827f34785effed6c076a099628870e2a5
2022-03-03 03:38:05 -08:00
aloksing
482fba652b qcacmn: Increment pkt type for WKK
Define DOT11_BE as per Rx tlv
Increment pkt type for WKK

CRs-Fixed: 3121279
Change-Id: Id4bf93e5dcda08cc7fccfe3f8f06b00e5b29d4e3
2022-03-03 03:37:57 -08:00
Pavankumar Nandeshwar
5f9a27027d qcacmn: Use msdu_done_copy bit for Waikiki
Use msdu_done_copy bit for Waikiki instead of msdu_done
bit, as access to the latter involves reading of an entire
new word, of which no other parameters are accessed.

Change-Id: I09017e53faff73aef484241f1972fe8c75585eb0
CRs-Fixed: 3132624
2022-03-02 08:15:48 -08:00
nobelj
f0064e8e52 qcacmn: Waikiki tx monitor packet construction
Added function to construct packet and send to stack
after parsing.

Change-Id: I4621eb24840253db261aea63079e27f744f92698
CRs-Fixed: 3115608
2022-03-01 05:39:37 -08:00
Chaithanya Garrepalli
6b19153bf0 qcacmn: Correct the print for mpdu_start
In hal_rx_dump_mpdu_start_tlv_9224 use right loglevel

Change-Id: I790c658d01a3fb0cbff1eb42842b45e6e35530a2
CRs-Fixed: 3137788
2022-03-01 03:45:36 -08:00
Pavankumar Nandeshwar
e57b5cfe7b qcacmn: Remove tags from the tlvs and support NO_RX_PKT_HDR_TLV
Remove the tags from the tlvs and support NO_RX_PKT_HDR_TLV
for Beryllium

Change-Id: Ie759582b67a1ae78cddc0402916f9a39e0023009
CRs-Fixed: 3137156
2022-02-28 16:12:32 -08:00
Nandha Kishore Easwaran
c27e15c6da qcacmn: Add 64 bit extraction macros for Tx
Add 64 bit extraction macros for Tx since many monitor
tlvs in QCN9224 use 64 bit offset and shift masks.

Change-Id: Ibf910d876d2305ae8eb16955dab1ed2dd9d66290
2022-02-28 11:33:42 -08:00
Neelansh Mittal
2c06a656a5 qcacmn: Add support for PPE
Add the PPE related DP APIs

Change-Id: I25aeff73fef21a7a8ad0f0e6e8aa6c537a233029
CRs-Fixed: 3045340
2022-02-28 11:33:37 -08:00
Ripan Deuri
eb543663d2 qcacmn: Enable usage of delta_tsf for SAWF
Enable usage of delta_tsf for SAWF. This will be used to compute tx
delay. Also, add support to update sawf stats in tx completion.

Change-Id: Idab7fbd5217175167ecdeee21cf5dc9daf1415d6
CRs-Fixed: 3135773
2022-02-28 07:53:27 -08:00
Mohit Khanna
5805824049 qcacmn: Add HAL APIs for flow override in BE
Add HAL APIs to access TX fields to override default flow
classification by hardware.

Change-Id: If2eb0c5a966f87081a7714836c2c4bc0bd47fa86
CRs-Fixed: 3114311
2022-02-24 01:00:06 -08:00
Chaithanya Garrepalli
f2ff4d40b6 qcacmn: Fix Klockwok issue
Fix OOB issue reported in KW in
hal_reo_ring_remap_value_get_be API

Change-Id: I576340aad735dd7d968d623ff131ef0f7773be3b
2022-02-23 12:28:46 -08:00
Chaithanya Garrepalli
be02a2d44f qcacmn: Add stats for new TQM release reason on BE
Add Tx completion stats for TQM release reason added
for BE

Change-Id: I7d28cbfacd1378982c5cf9a3f2cf3cffa070ee87
2022-02-23 08:37:16 -08:00
Vinay Adella
381d67a7a2 qcacmn: Add support to get reo qdesc size for li & be platforms
Bifurcate the hal_get_reo_qdesc_size to corresponding lithium
or Berillium platforms.
This can handle difference, if any between them and later enhance
to set the qdesc size based on peer negotiation.
Currently for NON_QOS_TID, the BA window size is hardcoded as
256 for Li and 1024 for Be.

Also modify hal_reo_cmd_update_queue_params to accommodate higher
Block-Ack Window size. For this steal bits from pn_size and use
pn_size values as macros PN_SIZE_XX which is only 3 bits,
instead of 8bits.

Change-Id: If310175da579aa3a47a8b031a1774c6c8982d4b2
CRs-Fixed: 3125986
2022-02-22 16:04:01 -08:00
Pavankumar Nandeshwar
70bd47772e qcacmn: Sanity check for phy addr in cb against ring_desc
Check phy addr in cb against ring_desc for sanity
in wbm rx path

Change-Id: I40dd2949993129d1da548da45160f9eace094bff
2022-02-18 15:32:02 -08:00
nobelj
eb6d660139 qcacmn: Add HAL specific api to support tx monitor
Added HAL specific api to support tx monitor,
	1. to get buffer address
	2. get number of users
	3. get corresponding structure to handle tx monitor and
	4. parse limited TLV tag.

Change-Id: Ic354c76b3bcf5fa454db973c2aa4ee5f9c1b4208
2022-02-18 01:27:37 -08:00
Prakash Manjunathappa
0447218ad2 qcacmn: KIWI V2: take care changed WBM completion release source
KIWI V2 WBM completion release reason codes are changed to match legacy
lithium release codes. Takecare to enable translation only for KIWI V1.

Change-Id: I094f40440b290ae424b47a7ba176b81ffea6c592
CRs-Fixed: 3132359
2022-02-17 07:45:22 -08:00
Jeevan Kukkalli
0101390bcd qcacmn: Update rxdma error code
Populate rxdma error code while reading sw monitor
ring descriptor

Change-Id: I4f95f7d2ccc16dd8178dd12d762bce7af4f57aff
CRs-Fixed: 3094251
2022-02-16 10:26:26 -08:00
Rakesh Pillai
d0eb950a7b qcacmn: Parse matched user info header from PHY tlv
Add support to parse the matched user info header
from the PHY TLV for EHT data traffic.

Change-Id: Ic5f47461b4617e087ff95863f4c6fc744266ee29
CRs-Fixed: 3128310
2022-02-15 17:28:18 -08:00
Rakesh Pillai
29586e0d60 qcacmn: Parse common user info header from PHY tlv
Add support to parse the common user info header
from the PHY TLV for EHT data traffic.

Change-Id: Id7d3359850806ec87945b4213771098121b0ce93
CRs-Fixed: 3094140
2022-02-15 17:28:13 -08:00
Rakesh Pillai
02df9e2ae8 qcacmn: Parse EHT-SIG header from PHY tlv
Add support to parse the EHT-SIG header from
the PHY TLV for EHT data traffic.

Change-Id: I05773c0086d1b67df8a08872832e36a96fb4b0b0
CRs-Fixed: 3093087
2022-02-15 17:28:08 -08:00
Rakesh Pillai
1e6e99702a qcacmn: Parse U-SIG header from PHY tlv
Add support to parse the U-SIG header from
the PHY TLV for EHT data traffic.

Change-Id: Icba9550795f87bb8ec7aa03af135ea05eb040ded
CRs-Fixed: 3093086
2022-02-15 17:28:02 -08:00
Rakesh Pillai
dad3ff5afa qcacmn: Add support to parse and aggregate split TLVs
For KIWI, when operating monitor mode in 802.11BE,
there can be certain header fields which can be received
as split across multiple TLVs.

Add support to aggregate such split TLVs and decode them
after agregation.

Change-Id: Ia00323a8f9fbe39306b1bbab4afefaa937befdae
CRs-Fixed: 3092820
2022-02-15 17:27:57 -08:00
Naga
03c268ac2d qcacmn: Fix to receive correct buffer address
Fix to receive correct descriptor buffer address
for tx monitor

Fix to send correct filter settings enabled

Disabled default filter display log level to debug.

Change-Id: I7ca1b1110cdcb10ca65ab8c414c19a81f1f4d331
CRs-Fixed: 3121965
2022-02-14 07:12:25 -08:00
Basamma Yakkanahalli
1ce26880e3 qcacmn: extract phyrx abort info to capture undecoded metadata
Add change:
1. Extract phyrx abort and phyrx abort reason error
   code from PPDU END TLV
2. Extract additional necessary fields from L SIG,
   HT/VHT/HE SIG TLVs

Change-Id: I3b05009cdc7ce7b585c00d1690ad238b9e6a88b2
2022-02-12 17:55:48 -08:00
Srinivas Girigowda
19e8de26f3 qcacmn: Changes required to build against kiwi v2 hw files
Changes required to build against kiwi v2 hw files.

Change-Id: Id2351b9e2d05155bf1e51035c0245ed099762866
CRs-Fixed: 3122905
2022-02-11 16:02:42 -08:00
Adwait Nayak
9a61b83a20 qcacmn: Fix issues in monitor path
1. Replenish path issue:

a. when number of required buffers passed to replenish API is '1',
host does not replenish '1' buffer.

b. If no. of available entries in ring are '0', return sw desc
   back to pool.

2. 32-bit compilation issue

3. Block ppdu desc deliver API when pktlog is enabled for BE

Change-Id: I79ebf1f84830b4c2f5e5b727e3e08c5ee1870898
2022-02-08 00:56:27 -08:00
Sumedh Baikady
e4d9b0c2d7 qcacmn: REO queue ref enhancement for Waikiki
In WIN BE chipsets, replace the REO tid
queue programming in FW via WMI with writing to a
Host managed table shared by HW and SW. REO HW will
pick the tid queue address from the table indexed by
peer id and tid number.

Change-Id: I8107ca5116425538329b11ae3519f02b32573bac
2022-02-02 12:06:29 -08:00
Amir Patel
8e96dd29e8 qcacmn: Disable Enhanced PPDU stats and low watermark interrupt
Disable Enhanced PPDU stats and low watermark interrupt for WKK

CRs-Fixed: 3120686
Change-Id: I8eecd2e17cb0748d1e7d15b28ce3d16f69fe81d5
2022-02-02 04:25:52 -08:00
Neha Bisht
5f8681ff1e qcacmn: Enable the 4th Tx. completion ring
Enable the 4th Tx. completion ring to save CPU load
Initialization and interrupt handling for 4th completion ring
is done here.

Change-Id: I2db27218a3c3e14d719d012f03454a6a7aa647fe
2022-02-01 21:04:30 -08:00
nobelj
357bfbe52d qcacmn: Add support to Legacy tx monitor and Waikiki
Add function pointers to free buffer address stored in status buffer
and support tx monitor in legacy and Waikiki flow.

Change-Id: I28612d388009292ff751fe514183fb801909f485
2022-01-28 04:05:13 -08:00
Jinwei Chen
77530eea0b qcacmn: support PLD lock for window register accessing
Currently window register accessing with PLD lock is not enabled for
HIF path of KIWI, enable it so there is no race condition with HAL
register accessing path.

Change-Id: Iceeba36ca6febdeca0e7f7bc0dcb7d4adc17bc51
CRs-Fixed: 3110425
2022-01-27 23:00:55 -08:00
Wu Gao
a6d46ebc8b qcacmn: Populate additional params to CFR info for QCA6750
HAL changes to populate agc gain, CFO, rx_start_ts, mcs_rate and
gi_type to CFR info for QCA6750.

Change-Id: I164324b1e929399a8dacf88f3012970c65d5d653
CRs-Fixed: 3115256
2022-01-27 03:12:49 -08:00
Wu Gao
cf7bae960f qcacmn: Add CFR supports for KIWI
This change adds CFR supports for KIWI.

Change-Id: I895eeae41c7f8bba4a35ee46a2ad6a1eadf82f9b
CRs-Fixed: 3114230
2022-01-27 00:53:46 -08:00
Kiran Venkatappa
0bada76a48 qcacmn: Fix compilation when monitor mode is not enabled
Fix compilation error when monitor mode files are not present
and QCA_MONITOR_2_0_SUPPORT is disabled.

Change-Id: Ia70976a89c0ca2349cf744c23a68b3004cbd3325
CRs-Fixed: 3117582
2022-01-27 00:53:41 -08:00
Naga
15ee4b1a2a qcacmn: correct LF copyright year
correct LF copyright year.

Change-Id: Ia631bf4f1f452d3c8171b2b99ed9a68a08fc647e
CRs-Fixed: 3114190
2022-01-23 03:33:13 -08:00