نمودار کامیت

611 کامیت‌ها

مولف SHA1 پیام تاریخ
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
Yeshwanth Sriram Guntuka
8e11d1a8fb qcacmn: Add frag dma unmap handling for SG packets
DMA unmap for scatter gather packets is done using
only frag0 dma address and the entire packet length
which will lead to incorrect behaviors. Add handling
to do dma unmap for all the fragments of SG packets.

Change-Id: I614553d9f96c573f0095c9be38706fd4ac3223ab
CRs-Fixed: 3112424
2022-01-22 09:53:24 -08:00
Namita Nair
d3e9c9ca97 qcacmn: Fix TCL_DATA_CMD struct parsing in KIWI crash dumps
The compiler removes unreferenced TCL_DATA_CMD struct from the
object file. Hence this cannot be parsed in the dumps. This fix will
inform the compiler to retain the structure.

Change-Id: I6bc12893769f17dc3f51130b7e947f62b1bd3ea9
CRs-Fixed: 3105021
2022-01-21 05:16:44 -08:00
Neelansh Mittal
fc1320b1fa qcacmn: Fix LF Copyright Markings
Fix LF Copyright Markings

Change-Id: I450e95a08a4cf6105932e98486a185ea1fb2dabf
2022-01-20 11:04:26 -08:00
Yu Tian
a20affa799 qcacmn: Avoid overwriting radiotap information in monitor mode
PHY related info. has been updated when processing PPDU status
in Monitor mode, but it's got overwritten uncorrectly when
processing RX_MSDU_START TLV in VHT mode. Change aims bypassing
the wrong update, when it's working in VHT mode.

Change-Id: I2c78db66bc7222e3eebf052fb6e57d6f9d859286
CRs-Fixed: 3108059
2022-01-12 22:54:08 -08:00
Amir Patel
484c917fbf qcacmn: Fix WKK monitor compilation issues
Fix WKK monitor compilation issues

Change-Id: I04bd89341e61bdcef59ecb03baa6cf53ca970cbe
CRs-Fixed: 3100286
2022-01-10 23:54:10 -08:00
Amir Patel
3abc7d0459 qcacmn: Add API to free sw mon_desc to pool
Add API to free sw mon_desc to pool

Change-Id: Ibc10c7dc9a41d4c972471683b7232c76d46c5109
2022-01-10 23:54:04 -08:00
Naga
902e67deb9 qcacmn: Fixes for wkk monitor bringup
Fixes for initial wkk monitor bringup in emulation.

Change-Id: Ic7b05b8822ef68daee7dd614fcac7a7de7b9b3fa
CRs-Fixed: 3087563
2022-01-10 22:14:01 -08:00
Chaithanya Garrepalli
32bc004766 qcacmn: Fix reo register config for BAR frame routing
Do not configure BAR frame routing keep routing default
to WBM release

Change-Id: I349e25030bf6e018385dd18e68d4b020b928f152
2022-01-10 07:33:05 -08:00
Naga
7798784bc5 qcacmn: Fixes for compilation issues
- Fixes for compilation issues after enabling
  monitor 2.0 support.
- change copyright year for all files in the chain.

Change-Id: I885e257bd8ca83850656d8a1f408c1bc34920d7a
CRs-Fixed: 3086483
2022-01-10 06:24:34 -08:00
Rakesh Pillai
165f79e802 qcacmn: Fix compilation error in whunt
Fix whunt compilation error for QCA6390

Change-Id: Ice806612552fad2ab3f1e1298e449f788f61be3d
CRs-Fixed: 3104503
2022-01-10 05:13:09 -08:00
Neelansh Mittal
596c07c7e6 qcacmn: Add HAL TX PPE data structures
Add the PPE Tx HAL data structures. Also add
dummy functions for reo2ppe and ppe2tcl rings
intializations.

Change-Id: I31fa61a728535c32ea3678407da8ae39f0d9f48d
2022-01-06 10:40:01 -08:00
Rakesh Pillai
5cc176837d qcacmn: Fix compilation error in FSE entry access
FISA is not supported by qca6390 and hence there are
compilation failure in FSE access.

Fix these compilation issues for qca6390.

Change-Id: I611b7e2068ad260a41add9b8bd5ab7a5345e8152
CRs-Fixed: 3103337
2022-01-04 10:33:04 -08:00
Sai Rupesh Chevuru
6bbb8971e2 qcacmn: Fix for ping issue in NAWDS Learning repeater mode
In qcn9224, NAWDS Learning repeater mode will receive packets
with reason as HAL_RXDMA_UNAUTHORIZED_WDS.

Change-Id: I6fe8428a5f8e2bac0e1db45b87169db0bd4cc271
2021-12-30 03:23:12 -08:00
sandhu
ad2829718c qcacmn: Remove IP from files
remove IP from code

Change-Id: If119a4af213b10aadb9f1344e50b0342e72405c2
CRs-Fixed: 3073864
2021-12-29 04:28:58 -08:00
Rakesh Pillai
b93b4af698 qcacmn: Fix timestamp parsing from TLV for kiwi
For KIWI target, 64-bit timestamp is reported
in the PHY TLVs. use the first 32-bits timestamp
value for the radiotap header.

Change-Id: Ia7d7a6913e4cdca3a1432cc5edbb0348ec8a6857
CRs-Fixed: 3096680
2021-12-27 13:00:47 -08:00
Jinwei Chen
c9ff3a2ac9 qcacmn: Support hif window register and set init_phase for Kiwi
For Kiwi, if UMAC force wake is enabled, HIF window register
support is needed as well. currently hal_soc->init_phase just be
true for a very short periord, this lead to hif_force_wake_request
is called frequently when configure register during initialization,
this is not necessary as pld and device is not in power collapse
state during this period.

Enable HIF window register and increase init_phase true period

Change-Id: I0b5394bbc1ca73d20b2fcabbf2a261e6f8335626
CRs-Fixed: 3097991
2021-12-27 13:00:36 -08:00
Kai Chen
d93357ef5d qcacmn: Move CCE and flow hal implementation to per chip
Move CCE and flow hal implementation to per chip hal layer.

Change-Id: I95a37d8bab00cdecfd6e8ae9a724b8c5541b336e
2021-12-21 11:41:42 -08:00
Chaithanya Garrepalli
5d1783fbc9 qcacmn: Correct DSCP to tid progamming for QCN9224
Fix DSCP to TID table programming issue for QCN9924

Change-Id: I698beb7bf475939b8477127b4950bc0d0cf9a791
2021-12-17 13:24:41 -08:00
Rakesh Pillai
63ea23ade1 qcacmn: Parse 64-bit TLVs in monitor status ring for WCN7850
In WCN7850, the tlv header width is 64-bit and the tlv header
start is 8-byte aligned inside the monitor status ring desc.

Add changes to parse the monitor status ring TLV according
to the TLV header width.

Change-Id: I19860b871abbc3037174b9d0ae5ed6e52b1eb736
CRs-Fixed: 3084443
2021-12-15 08:44:09 -08:00
Ananya Gupta
e5a33cd5b6 qcacmn: Fix reo reinjection path
Add 2 hal soc ops, hal_msdu_desc_info_set and
hal_mpdu_desc_info_se for berilliyum datapath.
Attach hal_rx_msdu_ext_desc_info_get_ptr_be to its function
pointer.
Get reo queue descriptor address as a 5 byte value as in
beryllium datapath it is being obtained from rx packet tlv.

Change-Id: Ia58597384e1a3d5eec493b865a88bab4f209502d
CRs-Fixed: 3084532
2021-12-14 21:22:54 -08:00
Yeshwanth Sriram Guntuka
de814c9b16 qcacmn: Trace del reg write, ce tasklet latency, tx, and rx pkts
Use the tracepoints to trace delayed register write, ce
tasklet scheduling latency, tx, and rx packets.

Change-Id: I63a89276177a9d0466dcb0c831eeb8e938a2bf79
CRs-Fixed: 3081870
2021-12-14 21:22:49 -08:00
Manoj Ekbote
80e882aa2a qcacmn: Intra-BSS changes for MLO
Use chip ID and destination peer to determine the target soc
and partner vdev for Intra-BSS in MLO case.

Change-Id: I709c52e74426c5e81b50c8063cad7669c0e7002d
2021-12-14 18:13:29 -08:00
Wu Gao
28ed233c3c qcacmn: Populate additional params to CFR info for QCA6490
HAL changes to populate agc gain, CFO, rx_start_ts, mcs_rate and
gi_type to CFR info for QCA6490.

Change-Id: I6f6f47c87d40bd661162f764fb3a360230a56457
CRs-Fixed: 3086667
2021-12-14 15:13:42 -08:00
Jianmin Zhu
e6821fc5fb qcacmn: Fix 11ac no rate info in monitor mode
PPDU nss is set as 0 illegally for qca6490, can't calculate rate.

Change-Id: I6d06d4cb220300e202f7b4f93e4e0eb1299cc8e6
CRs-Fixed: 3085590
2021-12-09 12:25:56 -08:00
Rakesh Pillai
773c505cde qcacmn: Fix monitor status tlv parsing for WCN7850
Fix the macros used for parsing the status TLVs
for WCN7850.

Change-Id: I8e22e5950b03e7a887afbea9d05cdddfdef83cbe
CRs-Fixed: 3084621
2021-12-09 12:25:51 -08:00
Harsh Kumar Bijlani
21fb667866 qcacmn: Correct the offsets & byte cnt computation in HTT stats
Offsets used by host for HTT stats are not aligned as per the
structure declaration given in file htt.h .
Make change to use the correct offsets to get the correct stats.

Also make change for byte count computation.

Also make cleanup changes for FR65817.

Change-Id: I8bc6164cc4994c49536d7277779f25b258be1592
CRs-Fixed: 3082742
2021-12-06 21:13:41 -08:00
Chaithanya Garrepalli
c9c1407d9a qcacmn: Correct the bank register config for QCN9224
For QCN9224 update dscp_to_tid_table_num correctly
in Bank register

Change-Id: I222fe103fbc676c8985b542a66c6aa246d73b4eb
2021-12-04 19:33:15 -08:00
Chaithanya Garrepalli
63cbee363b qcacmn: Correct RBM value when giving link_desc to HW
Use correct RBM value while giving back link descriptors
to HW from RX defrag path

Change-Id: I75eb41cd166dde2d26f32d3165ac52f732c83d82
2021-12-04 15:34:53 -08:00
Jinwei Chen
480aac399f qcacmn: revert FISA LRU deletion change
Revert FISA LRU deletion change.

Change-Id: Ie24df0df8f3833c0a982036b71479f1eb8f485f8
CRs-Fixed: 3083882
2021-12-01 04:23:14 -08:00
Harsh Kumar Bijlani
6c7fcf1d61 qcacmn: Add logic for allocation and reset of vdev_stats_id
In BE architecture, HW provides basic vdev stats support for upto
48 vdevs. For each vdev, there is vdev_stats_id which represents the
id of this vdev on HW. This vdev_stats_id is assigned by host and
is conveyed to HW at the time of REO TID Queue setup for the peer.

Add logic for allocation and deallocation of vdev_stats_id and
convey this id to HW.

Change-Id: If5611bf54d057ccf71c6444b5c79a26eb28df87e
CRs-Fixed: 3067843
2021-11-30 00:57:49 -08:00
Mohit Khanna
733215d31f qcacmn: Change device_wake, high_tput check order
In hal_delayed_reg_write change the order of
hal_is_reg_write_tput_level_high and pld_is_device_awake check. This
ensures that throughput level is checked before checking for device
wake state. This is beneficial in saving CPU cycles in high throughput
scenarios.

Change-Id: I23d0bde46779df9dca4388bf67c9395999274f3a
CRs-Fixed: 3078096
2021-11-25 14:17:28 -08:00
Chaithanya Garrepalli
c42af1f62f qcacmn: Rx path changes for multichip MLO
Rx patch changes for multichip MLO

1. Create ini for rx ring mask for each chip
2. Configure hash based routing for each chip based
   on lmac_peer_id_msb
3. Peer setup changes to configure lmac_peer_id_msb
   to enable hash based routing
4. Rx Replenish changes to provide buffers back to owner
   SOC of reo ring

Change-Id: Ibbe6e81f9e62d88d9bb289a082dd14b4362252c4
2021-11-23 19:28:20 -08:00
Chaithanya Garrepalli
70398a0ccd qcacmn: Changes needed for MLO soc attach
Changes needed for MLO soc attach to pass chip_id,
dp_ml_context from upper layer.

This change also takes care of assigning appropriate
RBM id for IDLE link descriptors based on chip_id.

Change-Id: I8f5f08c524d91942e6e458f048700b7bdd900107
2021-11-23 03:55:36 -08:00
Tallapragada Kalyan
4e7ceff561 qcacmn: Prefetch RX HW desc, SW desc and SKB in pipeline fashion
Prefetch RX HW desc, SW desc and SKB in pipeline
fasion in the first loop of RX processing.

This has improved TPUT by 200Mbps and provided a
10% gain in CPU (single core)

PINE with other optimizations: 3960Mbps @ 100% core-3
PINE + pipeline prefetch: 4130Mbps @ 90%  core-3

Change-Id: I47f351601b264eb3a2b50e4154229d55da738724
2021-11-22 13:36:33 -08:00
Tallapragada Kalyan
e3c327a0ba qcacmn: do a batch invalidation of REO descriptors
Added an API to do a batch invalidation of REO descs
saw an improvement of 40 to 45 Mbps.
Note: this change is applicable only for cached
descriptors

PINE with Default driver: 3189 @ 100% core-3
PINE with skb prefetch: 3469 @ 100% core-3
PINE with skb pre + batch inv: 3506 @ 100% core-3
Change-Id: Ic2cf294972acfe5765448a18bed7e903562836c3
2021-11-22 13:36:28 -08:00
Yeshwanth Sriram Guntuka
371d4ebd86 qcacmn: Increase the max WBM2SW rel rings for qca6750
Increase the max WBM2SW release rings for qca6750
when multiple tx ring pairs support is enabled.

Change-Id: Ifa3be25a7c9b7cb019165e76b3a71d3db9572334
CRs-Fixed: 3075392
2021-11-18 09:28:10 -08:00
Jinwei Chen
db033fdb9f qcacmn: Fix incorrect tcp_proto value from hal_rx_get_proto_params
tcp_proto is not set correctly from hal_rx_get_proto_params() API,
currently it is using HAL_RX_TLV_GET_IP_OFFSET, use
HAL_RX_TLV_GET_TCP_PROTO to fix it.

Change-Id: I1f3c6aa4b8f5420f176bda4aff158dcfa2a7ef5a
CRs-Fixed: 3073794
2021-11-16 22:14:33 -08:00
Chaithanya Garrepalli
41fda10bc5 qcacmn: In WBM err process read peer_id from peer_meta_data
In WBM error processing read peer_id from peer_meta_data
instead of sw_peer_id.

This changes is needed because we need to process Rx packet
on ML peer. But in MLO case sw_peer_id field contains
link_peer_id where as peer_meta_data has ml_peer_id.

Change-Id: I3f469adfdf7efa88cb081e94fa9fe0c54c1fb078
2021-11-12 04:46:16 -08:00
Yeshwanth Sriram Guntuka
5bd622de1a qcacmn: Use a max of 5 WBM2SW rings for HSP to address wcov failure
The maximum WBM2SW rings in whunt for HSP is 5 and
the same could be 4 in wlan code which will result
in wcov failure for HSP. Use a maximum of 5 WBM2SW
rings for HSP based on FW_SIM config flag to address
this failure.

Change-Id: I8340cd094eb1e0cf842894e5c89174d410729028
CRs-Fixed: 3071662
2021-11-10 03:56:03 -08:00
Jinwei Chen
045a3225cd qcacmn: Fix HMT compilation issue
Fix HMT compilation issue due to mismatch between HW header file and
print.

Change-Id: Ic0c8a59638ae6816651397898b0ca9eb3cd9ad7f
CRs-Fixed: 3069697
2021-11-07 21:18:45 -08:00