crypto: caam - disable IRQ coalescing by default
authorKim Phillips <kim.phillips@freescale.com>
Sat, 23 Jun 2012 00:48:53 +0000 (19:48 -0500)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 27 Jun 2012 06:42:06 +0000 (14:42 +0800)
commit1a076689cda8a1d623dcda170b2dc2b476cc6f1a
tree4c71eb88be4803eb8fd3b60884e8e9b2bc496b5e
parent281922a1d4f59bdebbe78c1d9f4c50a967eb6cff
crypto: caam - disable IRQ coalescing by default

It has been observed that in zero-loss benchmarks, when a
slow traffic rate is being tested, the IRQ timer coalescing
parameter was set too high, and the ethernet controller
would start dropping packets because the job ring back half
wouldn't be executed in time before the ethernet controller
would fill its buffers, thereby significantly reducing the
zero-loss performance figures.

Empirical testing has shown that the best zero-loss performance
is achieved when IRQ coalescing is set to minimum values and/or
turned off, since apparently the job ring driver already implements
an adequately-performing general-purpose IRQ mitigation strategy
in software.

Whilst we could go with minimal count (2-8) and timing settings
(192-256), we prefer just turning h/w coalescing altogether off
to minimize setkey latency (due to split key generation), and
for consistent cross-SoC performance (the SEC vs. core clock
ratio changes).

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/caam/Kconfig