Replenish buffers in RXDMA refill ring based on low threshold
interrupts in addition to regular Rx processing. Also increased
RXDMA refill ring size to 4096.
Change-Id: If1f4592c815fe2404c4952a96b721cb6d4fdfcd0
Provide an API to accept the config parameters
from the upper layer and store them in wlan_cfg_ctx.
Enable/Disable the datapath features based on these
parameters.
Change-Id: Icbdc835a51a6fea87c06174e9fc63d5d007aec1d
CRs-Fixed: 2097229
Provide an API to accept the config parameters
from the upper layer and store them in wlan_cfg_ctx.
Enable/Disable the datapath features based on these
parameters.
Change-Id: I9336cac686bfb875cea242685a122ec98acdf8c2
CRs-Fixed: 2097229
earlier we configured only REO_R0_DESTINATION_RING_CTRL_IX_2
and REO_R0_DESTINATION_RING_CTRL_IX_3, but we now configure
REO_R0_DESTINATION_RING_CTRL_IX_0 and
REO_R0_DESTINATION_RING_CTRL_IX_1. Also added module param for
rx hash steering.
Change-Id: I690aa395bc19e49df3687be2e70eaaad4994003e
Set tx completion masks for WBM2SW1/2 to zero for MCL.
This is to prevent accessing of tx completions rings whose
contexts are shared with REO rings.
Change-Id: Id1b8a98495668225ced71141f00d9f2094f37cd2
CRs-Fixed: 2106708
Enable all 3 HW Transmit rings by default to be able to tie each ring to
a CPU core for transmit datapath
Change-Id: I6f1dd011e1289f8ee603a81e373629c79af0fd3f
CRs-Fixed: 2103112
Add support for hash based steering in RX path, also
considered cases where a particular radio or both radios
are handled by NSS offload.
CRs-Fixed: 2092357
Change-Id: Ib0e88c28eecd7bfdb52c7337d4485ac41371be68
assign msi vectors to srng rings based on the ext_group they will be
serviced in.
provide support for ext_groups in hif_pci.
Change-Id: If313fdb43b939871c0d73dea9a05f757427b5b16
CRs-Fixed: 2051911
NSS requires the ring size to be power of 2.
The tx comp ring size is reduced to 4096
when nss is enabled.
Change-Id: Ied70faefdfe68eb2b7929ff6af4bed5a9e75068e
Adds support for flow control on convergence branch.
Allocate Tx descriptors dynamically when vdev comes up.
Tx queue is paused and unpaused internally in host based on the
stop and start thresholds.
Changes are added under compilation flag QCA_LL_TX_FLOW_CONTROL_V2.
Change-Id: I0ccb80b0099f39efad52ccd7d47f2709fdee2a93
CRs-Fixed: 2040457
Current data-path interrupt registration/handling assumes PDEV indices to be
in same order as HW MAC IDs, which is not always true. Fixed this by adding
wlan_cfg api to set and get pdev index to mac id mapping.
Change-Id: Iec8e9f4a02cd618a3b244cfd6fc7ead1e7d993c3
CRs-Fixed: 2063673
Currently interrupt mitigation values are configured for per-packet interrupts.
Change this for core DP rings (REO Destination and WBM Tx Completions) to reduce
CPU overhead of interrupt processing
Change-Id: I7bf0f6e78c52b5678ad3c8cc4d829444e410fad3
CRs-Fixed: 2064113
Current Tx Descriptor pool size is tuned for emulation; Increase the pool size
to 16K to ensure peak performance in DL for TCP and UDP.
Change-Id: Ifc253d01a8f2b083a8ca4239611f1209726d7af5
CRs-Fixed: 2004658
The irq entry for rx_err, rx_wdm_release, and reo_status
gets assigned for more than one context and this causes
double free irq during driver unload time. Fix the same
Change-Id: I197ee285e6eba5909dec3fa37677c13efce4765a
CRs-fixed: 2063981
Currently max_peer value is hardcoded with DP wlan_cfg. This change adds
a generic interface to obtain a configuration parameter from OL_IF and
store in DP
Change-Id: Id437ab3bcd02fb1cbcbe8b56d55d19780af87066
CRs-Fixed: 2004658
WLAN_LRO_ENABLE is checked for 1 in enabled case. So change macro
WLAN_LRO_ENABLE to 1 enable LRO
Change-Id: Ic1be57596633a5998c7a1db6c0d611ea3c5867cf
CRs-Fixed: 2042812
Changes include
1. nss_cfg parameter to dp_soc.
2. nss_enabled field for pdev.
3. cdp api to enabled nss offload config.
4. skip rx ring configuration when nss enabled.
5. skip timter /interrupt configuration if
nss is enabled.
6. peer map/unmap event hander.
Change-Id: Ic4a919b6b7e846e18cb15ebcb94f8736a751ecb5
We need to send the LRO and rx hash configuration to the
firmware during vdev attach. Currently they are being incorrectly
sent before WMI service ready indication.
Change-Id: I69680b48e6725c6deaad434d722546052cfe86b4
CRs-Fixed: 2022770
This change includes:
- Adding the hooks to send LRO and hash configuration to the firmware
- Configuring the REO remap registers
Change-Id: I6d83e2a2365647f2c7a6440bd1d4b42fa7df7eff
CRs-Fixed: 1094775
Out of 3 tx descriptor pools, only the first one is being
used currently. Getting rid of unused tx descriptor pools.
Change-Id: I4efc0fd88ce7dae104c6ee49149f78eac89a2654
CRs-Fixed: 2005582
1. Increased the sizes of following SRNGs used by WBM and also added max size
check in SRNG setup:
-idle link descriptor ring
-Tx completion ring
-Rx release ing
2. As per HW team, TP_ADDR and HP_ADDR for Idle link ring should remain 0 to avoid
some WBM stability issues. Remote head/tail pointers are not required since
this ring is completly managed by WBM HW
Change-Id: I93d70a287329dfeb08fcfb6b04306d65776b4834
Correct the configuration values for number of Tx and Rx
descriptors to be used for DP
CRs-Fixed: 1088985
Change-Id: Ica8e5021e7bd5ba83fbe3bd34243bfff4089353a
Wifi 3.0 compile against cdp apis.
Make compilable against mobile code base.
selective hw common header include.
Change-Id: I051f917001c0d13c762d9cb5a3ec141cd278d0e7
CRs-fixed: 1075736
Add a generic framework (wlan_cfg) for all configuration parameters
(eg.number of tx/rx rings) used by DP. Define all the parameters
as macro constants. We will later enhance wlan_cfg framework to
read these parameters from device tree file or ini file and populate
in DP config structures.
CRs-Fixed: 1073253
Change-Id: I7e4ddadb64006d17399acb68f92cf17fe23a98e2