Browse Source

kernel: crypto: add SHA2(224 and 256) ARM64 CE optimized module

Kernel has optimized version of SHA2(224 and 256) using the ARMv8 Crypto
Extensions, so lets package it.

Use it by default for qualcommax as it uses Cortex-A53 core and has ARMv8
CE extensions present.

Signed-off-by: Robert Marko <[email protected]>
Robert Marko 1 year ago
parent
commit
4443470a57
1 changed files with 9 additions and 0 deletions
  1. 9 0
      package/kernel/linux/modules/crypto.mk

+ 9 - 0
package/kernel/linux/modules/crypto.mk

@@ -985,6 +985,7 @@ define KernelPackage/crypto-sha256
 	CONFIG_CRYPTO_SHA256_OCTEON \
 	CONFIG_CRYPTO_SHA256_OCTEON \
 	CONFIG_CRYPTO_SHA256_PPC_SPE \
 	CONFIG_CRYPTO_SHA256_PPC_SPE \
 	CONFIG_CRYPTO_SHA256_ARM64 \
 	CONFIG_CRYPTO_SHA256_ARM64 \
+	CONFIG_CRYPTO_SHA2_ARM64_CE \
 	CONFIG_CRYPTO_SHA256_SSSE3
 	CONFIG_CRYPTO_SHA256_SSSE3
   FILES:= \
   FILES:= \
 	$(LINUX_DIR)/crypto/sha256_generic.ko \
 	$(LINUX_DIR)/crypto/sha256_generic.ko \
@@ -998,6 +999,12 @@ define KernelPackage/crypto-sha256/aarch64
   AUTOLOAD+=$(call AutoLoad,09,sha256-arm64)
   AUTOLOAD+=$(call AutoLoad,09,sha256-arm64)
 endef
 endef
 
 
+define KernelPackage/crypto-sha256/aarch64-ce
+  $(call KernelPackage/crypto-sha256/aarch64)
+  FILES+=$(LINUX_DIR)/arch/arm64/crypto/sha2-ce.ko
+  AUTOLOAD+=$(call AutoLoad,09,sha2-ce)
+endef
+
 define KernelPackage/crypto-sha256/octeon
 define KernelPackage/crypto-sha256/octeon
   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha256.ko
   FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha256.ko
   AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
   AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
@@ -1015,6 +1022,8 @@ define KernelPackage/crypto-sha256/x86_64
 endef
 endef
 endif
 endif
 
 
+KernelPackage/crypto-sha256/qualcommax=$(KernelPackage/crypto-sha256/aarch64-ce)
+
 ifdef KernelPackage/crypto-sha256/$(ARCH)
 ifdef KernelPackage/crypto-sha256/$(ARCH)
   KernelPackage/crypto-sha256/$(CRYPTO_TARGET)=\
   KernelPackage/crypto-sha256/$(CRYPTO_TARGET)=\
 	  $(KernelPackage/crypto-sha256/$(ARCH))
 	  $(KernelPackage/crypto-sha256/$(ARCH))