linux/drivers/net/ethernet/stmicro/stmmac
Giuseppe CAVALLARO 62a2ab935c stmmac: add Rx watchdog support to mitigate the DMA irqs
GMAC devices newer than databook 3.40 has an embedded timer
that can be used for mitigating the number of interrupts.
So this patch adds this optimizations.

At any rate, the Rx watchdog can be disable (on bugged HW) by
passing from the platform the riwt_off field.

In this implementation the rx timer stored in the Reg9 is fixed
to the max value. This will be tuned by using ethtool.

V2: added a platform parameter to force to disable the rx-watchdog
for example on new core where it is bugged.

V3: do not disable NAPI when Rx watchdog is used.

V4: a new extra statistic field has been added to show the early
receive status in the interrupt handler.
This patch also adds an extra check to avoid to call
napi_schedule when the DMA_INTR_ENA_RIE bit is disabled in the
Interrupt Mask register.

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-11-26 17:22:12 -05:00
..
chain_mode.c
common.h stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
descs_com.h stmmac: add header inclusion protection 2012-08-24 13:25:05 -04:00
descs.h stmmac: add header inclusion protection 2012-08-24 13:25:05 -04:00
dwmac100_core.c stmmac: add the Energy Efficient Ethernet support 2012-07-01 03:34:50 -07:00
dwmac100_dma.c stmmac: add mixed burst for DMA 2012-05-14 18:53:19 -04:00
dwmac100.h stmmac: add header inclusion protection 2012-08-24 13:25:05 -04:00
dwmac1000_core.c stmmac: add the Energy Efficient Ethernet support 2012-07-01 03:34:50 -07:00
dwmac1000_dma.c stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
dwmac1000.h stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
dwmac_dma.h stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
dwmac_lib.c stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
enh_desc.c stmmac: sanitize the rx coe and add the type-1 csum (v2) 2012-04-04 18:39:23 -04:00
Kconfig stmmac: remove dead code for STMMAC_TIMER support 2012-11-26 17:22:10 -05:00
Makefile stmmac: remove dead code for STMMAC_TIMER support 2012-11-26 17:22:10 -05:00
mmc_core.c stmmac: fix a typo in the macro used to mask the mmc irq 2012-08-22 19:14:31 -07:00
mmc.h stmmac: add header inclusion protection 2012-08-24 13:25:05 -04:00
norm_desc.c stmmac: sanitize the rx coe and add the type-1 csum (v2) 2012-04-04 18:39:23 -04:00
ring_mode.c stmmac: Fix for higher mtu size handling 2012-07-09 14:37:52 -07:00
stmmac_ethtool.c stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
stmmac_main.c stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00
stmmac_mdio.c net:stmmac: Remove bus_id from mdio platform data. 2012-08-31 16:11:28 -04:00
stmmac_pci.c net:stmmac: Remove bus_id from mdio platform data. 2012-08-31 16:11:28 -04:00
stmmac_platform.c net:stmmac: convert driver to use devm_request_and_ioremap. 2012-08-31 16:11:37 -04:00
stmmac.h stmmac: add Rx watchdog support to mitigate the DMA irqs 2012-11-26 17:22:12 -05:00