aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/crypto/crc32c-vpmsum_asm.S
diff options
context:
space:
mode:
authorDaniel Axtens <dja@axtens.net>2017-03-15 23:37:35 +1100
committerHerbert Xu <herbert@gondor.apana.org.au>2017-03-24 22:02:53 +0800
commit08c7dd1bd4b3a59c0d57b3ce4fe5ba1a90123685 (patch)
treeeb6b8a7c7cd0324f212b1e3c33e54da3b50def92 /arch/powerpc/crypto/crc32c-vpmsum_asm.S
parentcrypto: powerpc - Factor out the core CRC vpmsum algorithm (diff)
downloadlinux-dev-08c7dd1bd4b3a59c0d57b3ce4fe5ba1a90123685.tar.xz
linux-dev-08c7dd1bd4b3a59c0d57b3ce4fe5ba1a90123685.zip
crypto: powerpc - Re-enable non-REFLECTed CRCs
When CRC32c was included in the kernel, Anton ripped out the #ifdefs around reflected polynomials, because CRC32c is always reflected. However, not all CRCs use reflection so we'd like to make it optional. Restore the REFLECT parts from Anton's original CRC32 implementation (https://github.com/antonblanchard/crc32-vpmsum) That implementation is available under GPLv2+, so we're OK from a licensing point of view: https://github.com/antonblanchard/crc32-vpmsum/blob/master/LICENSE.TXT As CRC32c requires REFLECT, add that #define. Cc: Anton Blanchard <anton@samba.org> Signed-off-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'arch/powerpc/crypto/crc32c-vpmsum_asm.S')
-rw-r--r--arch/powerpc/crypto/crc32c-vpmsum_asm.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/crypto/crc32c-vpmsum_asm.S b/arch/powerpc/crypto/crc32c-vpmsum_asm.S
index c0d080caefc1..d2bea48051a0 100644
--- a/arch/powerpc/crypto/crc32c-vpmsum_asm.S
+++ b/arch/powerpc/crypto/crc32c-vpmsum_asm.S
@@ -842,4 +842,5 @@
.octa 0x00000000000000000000000105ec76f1
#define CRC_FUNCTION_NAME __crc32c_vpmsum
+#define REFLECT
#include "crc32-vpmsum_core.S"