mirror_ubuntu-kernels/drivers/net/ethernet/marvell
Dmitri Epshtein 06708f8152 net: mvneta: set real interrupt per packet for tx_done
Commit aebea2ba0f ("net: mvneta: fix Tx interrupt delay") intended to
set coalescing threshold to a value guaranteeing interrupt generation
per each sent packet, so that buffers can be released with no delay.

In fact setting threshold to '1' was wrong, because it causes interrupt
every two packets. According to the documentation a reason behind it is
following - interrupt occurs once sent buffers counter reaches a value,
which is higher than one specified in MVNETA_TXQ_SIZE_REG(q). This
behavior was confirmed during tests. Also when testing the SoC working
as a NAS device, better performance was observed with int-per-packet,
as it strongly depends on the fact that all transmitted packets are
released immediately.

This commit enables NETA controller work in interrupt per sent packet mode
by setting coalescing threshold to 0.

Signed-off-by: Dmitri Epshtein <dima@marvell.com>
Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Cc: <stable@vger.kernel.org> # v3.10+
Fixes aebea2ba0f ("net: mvneta: fix Tx interrupt delay")
Acked-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-07-08 23:44:44 -04:00
..
Kconfig net: mvneta: bm: fix dependencies again 2016-05-12 16:56:30 -04:00
Makefile net: mvneta: bm: add support for hardware buffer management 2016-03-14 12:19:46 -04:00
mv643xx_eth.c net: mv643xx_eth: fix packet corruption with TSO and tiny unaligned packets. 2016-01-28 16:08:01 -08:00
mvmdio.c mdio: Move allocation of interrupts into core 2016-01-07 14:31:26 -05:00
mvneta_bm.c net: mvneta: Fix lacking spinlock initialization 2016-05-25 12:35:08 -07:00
mvneta_bm.h net: mvneta: Use the new hwbm framework 2016-03-14 12:19:47 -04:00
mvneta.c net: mvneta: set real interrupt per packet for tx_done 2016-07-08 23:44:44 -04:00
mvpp2.c net: mvpp2: use cache_line_size() to get cacheline size 2016-04-01 14:36:47 -04:00
pxa168_eth.c net: pxa168_eth: Use dma_wmb/rmb where appropriate 2016-05-16 13:39:49 -04:00
skge.c skge: Unmask interrupts in case of spurious interrupts 2014-12-05 21:33:19 -08:00
skge.h
sky2.c treewide: replace dev->trans_start update with helper 2016-05-04 14:16:49 -04:00
sky2.h sky2: Receive Overflows not counted 2013-03-29 14:53:19 -04:00