Graphe des révisions

277 Révisions

Auteur SHA1 Message Date
Nanda Krishnan
afe07d8a36 qcacmn: Updating the PPE2TCL & REO2PPE ring size as 8k
Added changes in wifi module to update PPE2TCL & REO2PPE ring
size as 8k to improve the perf for MLO case

Change-Id: I6ca241c21c44b4cda8869e5e2ae9a4a906d98fc8
CRs-Fixed: 3365361
2023-01-08 05:32:58 -08:00
Sreeramya Soratkal
6eba2a4482 qcacmn: ini config to allocate special TX descriptors of SOC
An INI dp_tx_spl_device_limit is defined and can be used to configure the
limit of TX descriptors that can reserved on the SOC to handle
special frames like EAPOL.

CRs-Fixed: 3343207
Change-Id: Ic84a11249880a3541749a72ac6d60df548f2bc5c
2022-12-29 13:41:27 -08:00
Sreeramya Soratkal
88124ec9b4 qcacmn: ini config to allocate special TX descriptors of pdev
An INI dp_tx_spl_desc is defined and can be used to configure the
limit of TX descriptors that can reserved on the pdev to handle
special frames like EAPOL.

CRs-Fixed: 3343209
Change-Id: I6578bddd1f4ea07528c9f66f778b113ec6fb9e61
2022-12-29 13:41:17 -08:00
Pavankumar Nandeshwar
c811b9d544 qcacmn: PPE-DS feature naming convention update
1. Change the names of parameters and functions related
   to direct switch feature from ppe to ppeds
2. Remove the unused ppe_release_ring

Change-Id: I5a95b1273e338f354903af98158578ac65758a8a
CRs-Fixed: 3345097
2022-12-18 01:11:58 -08:00
Jeff Johnson
03abb0b8e4 qcacmn: Fix wlan_cfg documentation
The kernel-doc script identified a multitude of documentation issues
in the wlan_cfg folder, so fix them.

Change-Id: Id6bfb397608de6b858e448a867a3c21dffc9a178
CRs-Fixed: 3352408
2022-12-09 05:05:50 -08:00
Pavankumar Nandeshwar
e5534b1953 qcacmn: Register ppe2tcl and reo2ppe ring interrupts
Enable and register PPE2TCL and REO2PPE ring interrupts
for direct switch
Set interrupt timer threshold for ppe2tcl ring as 30 us.

Change-Id: Ida1ff6c3c2000f16f07960f7eae0d10edc337dc0
CRs-Fixed: 3341790
2022-12-02 21:56:01 -08:00
chunquan
e41f2e05ec qcacmn: Optimize wlan memory for kuno
Change minimum limit of dp_rxdma_buf_ring and
dp_ipa_tx_alt_ring_size value for ini may change little.

Change-Id: Ibbf8843b8f21bbfff1db83a0934f95222930b9ab
CRs-Fixed: 3338076
2022-12-01 06:20:47 -08:00
Nandha Kishore Easwaran
7432a2e275 qcacmn: Add field to indicate sw peer filtering
Add a field to indicate if SW peer filtering is needed in
Tx monitor

Change-Id: Id0ed1655dfe51632f0437c4e3e3c2ccd067f75fe
CRs-Fixed: 3333191
2022-11-28 04:58:30 -08:00
Hariharan Ramanathan
b673b97a2d qcacmn: Interrupt Changes for QCA5332
Added interrupt registering code for tx monitor and umac_reset

Change-Id: Id76329a908859a512cef23d68a4afbff794af09a
CRs-Fixed: 3340347
2022-11-27 01:50:43 -08:00
Jia Ding
4d49e53c5d qcacmn: Adjust min and max INI values for IPA tx size
On low memory targets, even with current min values, OOM is seen
on driver load time. This requires us to further reduce
the min value.

With 11be enabled, current max value may not meet KPI requirements.

Hence align min and max INI values for IPA TX ring and TX completion
ring size with HOST used ones.

Change-Id: Iedf1c2d4be04d798314e9ba61a844038c5696f45
CRs-Fixed: 3338114
2022-11-26 04:53:19 -08:00
Sreeramya Soratkal
07b290e3a7 qcacmn: Update number of chips in MLO
To support MLO on 4 chips, update the maximum number of chips that
can participate in MLO to 4.

CRs-Fixed: 3314581
Change-Id: I93a253b4e54f7e4e19ea8407facfb69e6347d192
2022-11-25 18:35:55 -08:00
Pavankumar Nandeshwar
ab2bd061c2 qcacmn: Enable wbm2sw_release ring for ppe2tcl ring
Enable wbm2sw_release ring for ppe2tcl ring to
handle tx completions

Change-Id: I38e81bb46e376e3f059f321454aa4d241e6aadb7
CRs-Fixed: 3309444
2022-11-23 02:15:55 -08:00
Pavankumar Nandeshwar
a7ec0b569c qcacmn: Enable ppe ds by default through ini
Enable ppe direct switch feature by default
through ini, and rename the ppe_enable parameter
to ppe_ds_enable

Change-Id: I574838394ab9edd0445f65f81f05566967208276
CRs-Fixed: 3339167
2022-11-19 03:54:54 -08:00
Nanda Krishnan
776f11b082 qcacmn: Updating the PPE2TCL ring max size as 32k
Added changes in wifi module to update the ring size as 32k

Change-Id: I0e81c8b2b2d037f30bcb570e85d97f8ffd14a268
CRs-Fixed: 3326869
2022-11-14 05:42:36 -08:00
Jeevan Kukkalli
3bc974804e qcacmn: Add ini cfg to disable invalid decap type handling
Add ini configuration to disable invalid decap type handling
during rx mon tlv processing. This is a temporary change for
debugging purpose and will be removed once HW issue is resolved.

Change-Id: I75eb53170833224ddd144baf1b1d8034f988dd3c
CRs-Fixed: 3308998
2022-10-20 10:55:19 -07:00
Amrit Sahai
9313b57907 qcacmn: Add support to get jitter stats on peer level
Add support to get jitter stats on peer level

Change-Id: I5e37a24e93cde5e34e561b26c0834d9cfe42bf9f
CRs-Fixed: 3296380
2022-10-20 01:11:44 -07:00
Jinwei Chen
2a6561273c qcacmn: support more dp srng with memory pre-allocation
add more ring type's size to wlan_dp_prealloc_cfg structure,
add DP_MON_PDEV_TYPE memory pre-allocation support.

Change-Id: I23aebaf7e7e78206ac49ebf02719f6b4dee99875
CRs-Fixed: 3314209
2022-10-18 05:22:27 -07:00
Chaithanya Garrepalli
64c4cb3524 qcacmn: Add ini support for RX low threshold interrupts
Add ini param "dp_disable_rx_buf_low_threshold" to disable
low threshold interrupts on regular rx refill ring. Default
it is enabled.

Change-Id: Ie471a4dc6862cbfe8b1eafe7c7d2ce2e0a7fcb7a
CRs-Fixed: 3313885
2022-10-18 01:42:37 -07:00
Vivek
3b1f7ced17 qcacmn: Add dp ini param for sawf stats
Add dp ini-param to configure sawf_stats.

CRs-Fixed: 3300948
Change-Id: Ifeb6935e2309be1f974c4da30b33a5caca308569
2022-10-16 21:43:21 -07:00
Pavankumar Nandeshwar
004224830d qcacmn: Allocate dedicated tx desc pool for ppeds
Allocate dedicated tx desc pool for PPE2TCL ring
tx completion handling.

Change-Id: I3d3220b9b38b6f24d98ce73cb5273ae4dc6e7f37
CRs-Fixed: 3300660
2022-10-13 15:09:49 -07:00
Manish Verma
bc05063ebb qcacmn: Add support for DS UL processing
Add support for PPE-DS REO2PPE ring processing

Change-Id: I74f4195ce4a58d1afaef132257b969ce38a65e1c
CRs-Fixed: 3278270
2022-10-11 14:23:18 -07:00
Chaithanya Garrepalli
3ed8f4da95 qcacmn: Change RX release max to 32K
Change ini max configurable size for RX release
ring to 32k

Change-Id: I97de3134430e6be5d4217b3cbc773a18463807dc
CRs-Fixed: 3306911
2022-10-08 00:17:59 -07:00
Jeff Johnson
29f3ca2434 qcacmn: wlan_cfg: Fix misspellings
Fix misspellings in wlan_cfg/...

Change-Id: I2370881dd3663238cbbd0417c8c9b4694c5ac27c
CRs-Fixed: 3304704
2022-10-07 19:14:07 -07:00
Ruben Columbus
953a16bb46 qcacmn: delete QCA_TEST_MON_PF_TAGS_STATS for cce/fse stats
delete QCA_TEST_MON_PF_TAGS_STATS to enable stats by default
and just use flag to enable debug nbuf_head dump

Change-Id: I0b0bb627f4d597d28181a11c38fa18b191210da4
CRs-Fixed: 3278411
2022-09-14 23:43:40 -07:00
Rakesh Pillai
ffec5f3f9e qcacmn: Update prealloc size for srng from CFG
Update the prealloc size for RXDMA_BUF and REO_DST
rings using the ini values which have been configured.

Change-Id: Id47fbca3a79b37bba902d1b5bd0bf8c6073648cc
CRs-Fixed: 3283986
2022-09-12 00:28:20 -07:00
Chaithanya Garrepalli
cd40aa85ab qcacmn: Add few missing stats
1. Add stats to indicate REO ring size and Rx desc pool size
2. Add low threshold interrupt stats
3. Update SW2RxDMA ring size max to 16K

Change-Id: If84b88bc08e447774ab445df36b9f2f2219356b8
CRs-Fixed: 3286940
2022-09-12 00:28:13 -07:00
Ruben Columbus
734657149e qcacmn: bkpressure control time event
add debug prints and a custom timer for how long to wait to receive next
bk pressure event message.

Change-Id: I5a736b0f134cd179990de536da02967db3e39774
CRs-Fixed: 3273427
2022-09-03 03:20:02 -07:00
Chaithanya Garrepalli
adbb77002a qcacmn: Use different Rx ring mask for ML and non-ML peers
Add framework to use different RX hash values and ring masks
for ML and non-ML peers

Change-Id: I098cb50b8873eb137ce096011d01a5c21aaf854f
CRs-Fixed: 3269916
2022-08-22 14:56:26 -07:00
Amir Patel
b86ca75702 qcacmn: Disable protocol flow tagging feature by default
Currently, protocol flow tagging feature is enabled,
disable it by default.

Change-Id: I8f3325344f0ddbb065beae6eb7761ebb493e2a09
CRs-Fixed: 3262389
2022-08-10 04:15:26 -07:00
Rakesh Pillai
32375d2717 qcacmn: Increase the FISA skid length to 16
At 802.11BE 320 MHz throughputs, flow collision and
the resultant flow eviction can lead to throughput
degradation. Skid length is a parameter which can be
used to reduce these continuous flow eviction from the
FISA flow table.

Increase the FISA flow table skid length to 16 to reduce
the chances of flow eviction from FISA flow table.

Change-Id: I3badcb364d45b19a8a266fe335df320c30f999ae
CRs-Fixed: 3232508
2022-07-26 06:00:56 -07:00
syed touqeer pasha
18f8aed530 qcacmn: Initialize the host ast database flag
Initialize the host ast entries database flag.

Change-Id: If948374417fcfabe313c014235674ccc571f520d
CRs-Fixed: 3243776
2022-07-24 15:47:29 -07:00
Jinwei Chen
89bdae0fc0 qcacmn: Fix monitor status buffer double free issue
Currently in monitor mode for KIWI, interrupt for RXDMA2HOST is
enabled to process both monitor status srng and montior destination
srng, but low threshold interrupt for monitor status srng is also
enabled. so when available RX buffer in monitor status srng is less
then low threshold, it is possible that two kind of interrupt from
RXDMA2HOST ring and monitor status ring will call
dp_rx_mon_status_process_tlv() in different context and access to
mon_pdev->rx_status_q at the same time, this will lead to skb
double free issue.

solution:
(1) disable RXDMA2HOST srng interrupt in monitor mode.
(2) enable monitor status srng batch count interrupt for monitor
processing.

Change-Id: I1df8830cb7cc55468e5df5e49045c3d96f7c29a8
CRs-Fixed: 3245393
2022-07-21 02:38:50 -07:00
Jia Ding
720b38fbc6 qcacmn: Use correct wbm_ring_num for SW5 and SW6
With KIWI_V2, wbm_ring_num for WBM2SW5 and WBM2SW6 have been changed
to 5 and 6. Hence properly update them in g_tcl_wbm_map_array. At the
same time, tx_ring_mask_msi and tx_ring_near_full_irq_mask are also
updated.

With IPA_OFFLOAD enabled soc->tcl_data_ring[0|1|2] is used by HOST
and the other two rings are allocated to IPA usage.

Change-Id: I4c13d0787e46be667c3a5a0ae624df8c2b2b354e
CRs-Fixed: 3229375
2022-07-08 05:41:11 -07:00
Shiva Krishna Pittala
f853241025 qcacmn: Interrupt assignment for UMAC HW reset feature
UMAC HW reset feature will be using the last interrupt context in each
DP interrupt combination i.e., on a system with more than 8 MSIs for DP,
UMAC HW reset will be assigned a dedicated interrupt context.
Add the necessary support for the same.

CRs-Fixed: 3163900
Change-Id: I26abd01e4261661ed95e1aa3cb2a774e78b50d9f
2022-06-27 05:29:10 -07:00
Rakesh Pillai
06c5d97195 qcacmn: Increase the max rx descriptors to 16K
Currently the max number of rx descriptors, via INI,
is 4096, which is not sufficient if the number of
entries in rx buffer refill ring is increased.

Hence the set the max allowed number of rx descriptors
to 16K, which is also the max allowed entries in the
rx buffers refill ring.

Change-Id: I287a3f47525179ebf8de65e2f8310a961881916b
CRs-Fixed: 3224590
2022-06-23 05:17:32 -07:00
Nandha Kishore Easwaran
e34a1ed32c qcacmn: Increase number of DP interrupt to 16
Increase the number of DP interrupts to 16. The interrupt assignment
table is updated to add new values for different MSI interrupts
available. 9, 10 and 11 MSIs configuration will take the same
configuration as that of 8 MSI. 13, 14 and 15 MSIs configuration
will take the same configuration as that of 12 MSI. New MSI assignment
configuration is introduced for 12 and 16 MSIs.

Change-Id: I82af75b21c793a62fc8f0bd5515e1160b601c0c2
CRs-Fixed: 3209397
2022-06-20 07:28:11 -07:00
Mohit Khanna
0c558b779b qcacmn: Enable notify-frame feature in FW
Enable bits in WMI_INIT command to let the FW know about host's
capability to support notify frame feature. If the feature is enabled,
host can mark certain TX frames as "notify frames" for hardware and they
need not be sent to FW. FW depends on this capability exchange to decide
whether to install HW rules for frames to be sent to HW.

Change-Id: I7158e79ae0fbdc73a2f4096ae1577337e8291246
CRs-Fixed: 3209399
2022-06-14 01:37:19 -07:00
Tallapragada Kalyan
204b765390 qcacmn: get NAPI scale factor through ini configuration
NAPI scale factor should be configured based on the board
type. for example Hawkeye could have a different scale factor
compared to Alder.

CRs-Fixed: 3212330
Change-Id: Ie0bad6aade9ca9379997aa974154f9fb903ab93e
2022-06-08 09:44:31 -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
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
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
Prakash Manjunathappa
1c82895c18 qcacmn: 512BA: Increase rxdma_buf ring size
RXDMA BUF RING: MAX: 4K configurable by INI.dp_rxdma_buf_ring

Change-Id: I44403736327b264e8eeb551ad7e4a3d86b4749f9
CRs-Fixed: 3196543
2022-05-20 03:14:54 -07:00
sandhu
654ea2aefe qcacmn: Add ini value for fisa rx lru del enable
Add ini value to enable disable lru del enable/disable.

Change-Id: I61e967a1f0939515177edc79415397e16b55d774
CRs-Fixed: 3160268
2022-05-19 01:57:36 -07:00
Chaithanya Garrepalli
7b23a8ac53 qcacmn: Change max Rx refill ring size to 8192
Increase max value of Rx refill ring size that
can be configured via ini to 8192

Change-Id: I5180996181e43d26221e0106488eda86cf711e1c
CRs-Fixed: 3198408
2022-05-17 16:45:10 -07:00
Namita Nair
641d044574 qcacmn: Increase TX_DESC_POOL size
This is a WAR to match the TX_DESC_POOL size
to maximum number of VDEVs allowed.

Change-Id: I646a67ef2b611bea1ca5a6e2bf781a9454d409ed
CRs-Fixed: 3168359
2022-05-10 23:38:22 -07:00
Ananya Gupta
bf41cceb2f qcacmn: Use gEnableDataStallDetection as UINT value
Currently, data stall detection is without control over
individual data stall events.
INI variable, gEnableDataStallDetection is converted from
boolean to unsigned int which provides control over events
across FW and host with each bit corresponding to different
data stall events.
Bit 0: Enable all data stall events if set.
Bit 1-30: mapped to data stall events. Used when Bit 0 is 0
Bit 31: Enable aggressive timeout for WLM Mode.

Change-Id: I4656520accd1589e77d5054eaa0a3cb8e63b14b2
CRs-Fixed: 3174906
2022-04-24 23:13:39 -07:00
Ananya Gupta
0afac9d12e qcacmn: Enable IPA if enabled in platform driver and ini
Enable IPA only if it is enabled from both platform driver
and ini file.
Change-Id: Ifc4bcd2c5b29b91c0eb72a844906cf11a65686e4
CRs-Fixed: 3148731
2022-04-12 06:31:43 -07:00
Himanshu Batra
423c297cc3 qcacmn: Disable host2rxdma interrupt for IPA offload
Disable host2rxdma interrupt for IPA offload

Change-Id: I8dd73df8f6296f7b2eb8c0a861b606e6a75699ff
CRs-Fixed: 3171223
2022-04-12 02:59:29 -07:00
Jinwei Chen
cef863a29e qcacmn: configure host SW2HW ring timer threshold as 0
For SW2HW ring, if time threshold is non-zero and low threshold
is 0, then if ring is empty, HW will keep generating low threshold
interrupt always which then LPL failed.

Configure SW2HW ring timer threshold 0 to disable low threshold
interrupt, also set batch_count threshold 0 as host not need the
interrupt if HW consumed entries.

Change-Id: I6c8ea516e66abd706fecd97649f3a19702453b85
CRs-Fixed: 3149341
2022-03-25 04:10:34 -07:00