aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/crypto/Makefile
diff options
context:
space:
mode:
authorYazen Ghannam <yazen.ghannam@linaro.org>2014-11-19 11:19:37 -0600
committerHerbert Xu <herbert@gondor.apana.org.au>2014-11-20 22:39:39 +0800
commitf6f203faa3ebd8fa229e34424850a0919ded6c10 (patch)
tree0099a95e8a8f7dbe059cf626aec5ae0b7d7a0cb9 /arch/arm64/crypto/Makefile
parentcrypto: qat - Use memzero_explicit (diff)
downloadlinux-dev-f6f203faa3ebd8fa229e34424850a0919ded6c10.tar.xz
linux-dev-f6f203faa3ebd8fa229e34424850a0919ded6c10.zip
crypto: crc32 - Add ARM64 CRC32 hw accelerated module
This module registers a crc32 algorithm and a crc32c algorithm that use the optional CRC32 and CRC32C instructions in ARMv8. Tested on AMD Seattle. Improvement compared to crc32c-generic algorithm: TCRYPT CRC32C speed test shows ~450% speedup. Simple dd write tests to btrfs filesystem show ~30% speedup. Signed-off-by: Yazen Ghannam <yazen.ghannam@linaro.org> Acked-by: Steve Capper <steve.capper@linaro.org> Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'arch/arm64/crypto/Makefile')
-rw-r--r--arch/arm64/crypto/Makefile4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm64/crypto/Makefile b/arch/arm64/crypto/Makefile
index a3f935fde975..5720608c50b1 100644
--- a/arch/arm64/crypto/Makefile
+++ b/arch/arm64/crypto/Makefile
@@ -34,5 +34,9 @@ AFLAGS_aes-neon.o := -DINTERLEAVE=4
CFLAGS_aes-glue-ce.o := -DUSE_V8_CRYPTO_EXTENSIONS
+obj-$(CONFIG_CRYPTO_CRC32_ARM64) += crc32-arm64.o
+
+CFLAGS_crc32-arm64.o := -mcpu=generic+crc
+
$(obj)/aes-glue-%.o: $(src)/aes-glue.c FORCE
$(call if_changed_rule,cc_o_c)