+define KernelPackage/crypto-sha1/octeon
+ FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha1.ko
+ AUTOLOAD+=$(call AutoLoad,09,octeon-sha1)
+endef
+
+define KernelPackage/crypto-sha1/x86/64
+ FILES+=$(LINUX_DIR)/arch/x86/crypto/sha1-ssse3.ko
+ AUTOLOAD+=$(call AutoLoad,09,sha1-ssse3)
+endef
+
+$(eval $(call KernelPackage,crypto-sha1))
+
+
+define KernelPackage/crypto-sha256
+ TITLE:=SHA224 SHA256 digest CryptoAPI module
+ DEPENDS:=+kmod-crypto-hash
+ KCONFIG:= \
+ CONFIG_CRYPTO_SHA256 \
+ CONFIG_CRYPTO_SHA256_OCTEON \
+ CONFIG_CRYPTO_SHA256_SSSE3
+ FILES:=$(LINUX_DIR)/crypto/sha256_generic.ko
+ AUTOLOAD:=$(call AutoLoad,09,sha256_generic)
+ $(call AddDepends/crypto)
+endef
+
+define KernelPackage/crypto-sha256/octeon
+ FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha256.ko
+ AUTOLOAD+=$(call AutoLoad,09,octeon-sha256)
+endef
+
+define KernelPackage/crypto-sha256/x86/64
+ FILES+=$(LINUX_DIR)/arch/x86/crypto/sha256-ssse3.ko
+ AUTOLOAD+=$(call AutoLoad,09,sha256-ssse3)
+endef
+
+$(eval $(call KernelPackage,crypto-sha256))
+
+
+define KernelPackage/crypto-sha512
+ TITLE:=SHA512 digest CryptoAPI module
+ DEPENDS:=+kmod-crypto-hash
+ KCONFIG:= \
+ CONFIG_CRYPTO_SHA512 \
+ CONFIG_CRYPTO_SHA512_OCTEON \
+ CONFIG_CRYPTO_SHA512_SSSE3
+ FILES:=$(LINUX_DIR)/crypto/sha512_generic.ko
+ AUTOLOAD:=$(call AutoLoad,09,sha512_generic)
+ $(call AddDepends/crypto)
+endef
+
+define KernelPackage/crypto-sha512/octeon
+ FILES+=$(LINUX_DIR)/arch/mips/cavium-octeon/crypto/octeon-sha512.ko
+ AUTOLOAD+=$(call AutoLoad,09,octeon-sha512)
+endef
+
+define KernelPackage/crypto-sha512/x86/64
+ FILES+=$(LINUX_DIR)/arch/x86/crypto/sha512-ssse3.ko
+ AUTOLOAD+=$(call AutoLoad,09,sha512-ssse3)
+endef
+
+$(eval $(call KernelPackage,crypto-sha512))