This series removes the per-architecture poly1305 shash glue code and re-implements the poly1305 shashes on top of the Poly1305 library functions. This ends up being much simpler, and it is how it should have been done originally. This follows similar changes to crc32, crc32c, and chacha20.
This series also makes the Poly1305 library be optimized on PowerPC. Previously the PowerPC-optimized Poly1305 code only supported shash. Eric Biggers (9): crypto: powerpc/poly1305 - implement library instead of shash crypto: poly1305 - centralize the shash wrappers for arch code crypto: arm/poly1305 - remove redundant shash algorithm crypto: arm64/poly1305 - remove redundant shash algorithm crypto: mips/poly1305 - drop redundant dependency on CONFIG_MIPS crypto: mips/poly1305 - remove redundant shash algorithm crypto: x86/poly1305 - remove redundant shash algorithm crypto: x86/poly1305 - don't select CRYPTO_LIB_POLY1305_GENERIC crypto: poly1305 - remove rset and sset fields of poly1305_desc_ctx arch/arm/crypto/Kconfig | 6 - arch/arm/crypto/poly1305-glue.c | 170 ++---------------------- arch/arm64/crypto/Kconfig | 6 - arch/arm64/crypto/poly1305-glue.c | 143 ++------------------ arch/mips/crypto/Kconfig | 6 - arch/mips/crypto/poly1305-glue.c | 120 +---------------- arch/powerpc/crypto/Kconfig | 11 +- arch/powerpc/crypto/poly1305-p10-glue.c | 134 ++++++------------- arch/x86/crypto/Kconfig | 8 -- arch/x86/crypto/poly1305_glue.c | 99 ++------------ crypto/Makefile | 3 +- crypto/poly1305.c | 153 +++++++++++++++++++++ crypto/poly1305_generic.c | 149 --------------------- include/crypto/poly1305.h | 13 +- lib/crypto/poly1305.c | 2 - 15 files changed, 242 insertions(+), 781 deletions(-) create mode 100644 crypto/poly1305.c delete mode 100644 crypto/poly1305_generic.c base-commit: 3be3f70ee95da03a87d94c4a714ee679a5c7b34d -- 2.49.0