arm/crypto: Add optimized AES and SHA1 routines
authorDavid McCullough <david_mccullough@mcafee.com>
Thu, 6 Sep 2012 20:17:02 +0000 (04:17 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 6 Sep 2012 20:17:02 +0000 (04:17 +0800)
commitf0be44f4fb1faee42635ca5ea06dc9c3e820a35d
tree866c6016f7153ddff778a5eda036934e7eb426ac
parent956c203c5e370c7beb766400b5c1a32ec570ce96
arm/crypto: Add optimized AES and SHA1 routines

Add assembler versions of AES and SHA1 for ARM platforms.  This has provided
up to a 50% improvement in IPsec/TCP throughout for tunnels using AES128/SHA1.

Platform   CPU SPeed    Endian   Before (bps)   After (bps)   Improvement

IXP425      533 MHz      big     11217042        15566294        ~38%
KS8695      166 MHz     little    3828549         5795373        ~51%

Signed-off-by: David McCullough <ucdevel@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm/Makefile
arch/arm/crypto/Makefile [new file with mode: 0644]
arch/arm/crypto/aes-armv4.S [new file with mode: 0644]
arch/arm/crypto/aes_glue.c [new file with mode: 0644]
arch/arm/crypto/sha1-armv4-large.S [new file with mode: 0644]
arch/arm/crypto/sha1_glue.c [new file with mode: 0644]
crypto/Kconfig