Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
[cascardo/linux.git] / crypto / Kconfig
index 77daef0..87bbc9c 100644 (file)
@@ -158,6 +158,20 @@ config CRYPTO_CRYPTD
          converts an arbitrary synchronous software crypto algorithm
          into an asynchronous algorithm that executes in a kernel thread.
 
+config CRYPTO_MCRYPTD
+       tristate "Software async multi-buffer crypto daemon"
+       select CRYPTO_BLKCIPHER
+       select CRYPTO_HASH
+       select CRYPTO_MANAGER
+       select CRYPTO_WORKQUEUE
+       help
+         This is a generic software asynchronous crypto daemon that
+         provides the kernel thread to assist multi-buffer crypto
+         algorithms for submitting jobs and flushing jobs in multi-buffer
+         crypto algorithms.  Multi-buffer crypto algorithms are executed
+         in the context of this kernel thread and drivers can post
+         their crypto request asynchronously to be processed by this daemon.
+
 config CRYPTO_AUTHENC
        tristate "Authenc support"
        select CRYPTO_AEAD
@@ -559,6 +573,22 @@ config CRYPTO_SHA1_PPC
          This is the powerpc hardware accelerated implementation of the
          SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
 
+config CRYPTO_SHA1_MB
+       tristate "SHA1 digest algorithm (x86_64 Multi-Buffer, Experimental)"
+       depends on X86 && 64BIT
+       select CRYPTO_SHA1
+       select CRYPTO_HASH
+       select CRYPTO_MCRYPTD
+       help
+         SHA-1 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