crypto: sha256-mb - Enable multibuffer support
authorMegha Dey <megha.dey@intel.com>
Fri, 24 Jun 2016 01:40:43 +0000 (18:40 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 27 Jun 2016 08:57:43 +0000 (16:57 +0800)
Add the config CRYPTO_SHA256_MB which will enable the computation using the
SHA256 multi-buffer algorithm.

Signed-off-by: Megha Dey <megha.dey@linux.intel.com>
Reviewed-by: Fenghua Yu <fenghua.yu@intel.com>
Reviewed-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/Kconfig

index 5baaa9d87574cbf2288813a98c8e29746858a17e..d8cc0f0852786ad6e0cfeb64a2c1b9f77a28513d 100644 (file)
@@ -704,6 +704,22 @@ config CRYPTO_SHA1_MB
          lanes remain unfilled, a flush operation will be initiated to
          process the crypto jobs, adding a slight latency.
 
+config CRYPTO_SHA256_MB
+       tristate "SHA256 digest algorithm (x86_64 Multi-Buffer, Experimental)"
+       depends on X86 && 64BIT
+       select CRYPTO_SHA256
+       select CRYPTO_HASH
+       select CRYPTO_MCRYPTD
+       help
+         SHA-256 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
+         using multi-buffer technique.  This algorithm computes on
+         multiple data lanes concurrently with SIMD instructions for
+         better throughput.  It should not be enabled by default but
+         used when there is significant amount of work to keep the keep
+         the data lanes filled to get performance benefit.  If the data
+         lanes remain unfilled, a flush operation will be initiated to
+         process the crypto jobs, adding a slight latency.
+
 config CRYPTO_SHA256
        tristate "SHA224 and SHA256 digest algorithm"
        select CRYPTO_HASH