diff options
author | Yazen Ghannam <yazen.ghannam@linaro.org> | 2014-11-19 11:19:37 -0600 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2014-11-20 22:39:39 +0800 |
commit | f6f203faa3ebd8fa229e34424850a0919ded6c10 (patch) | |
tree | 0099a95e8a8f7dbe059cf626aec5ae0b7d7a0cb9 /arch/arm64/crypto/Makefile | |
parent | aa408d6019775c1b4362895df7929a043fa79804 (diff) | |
download | blackbird-op-linux-f6f203faa3ebd8fa229e34424850a0919ded6c10.tar.gz blackbird-op-linux-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/Makefile | 4 |
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) |