1# SPDX-License-Identifier: GPL-2.0 2# 3# powerpc/crypto/Makefile 4# 5# Arch-specific CryptoAPI modules. 6# 7 8obj-$(CONFIG_CRYPTO_AES_PPC_SPE) += aes-ppc-spe.o 9obj-$(CONFIG_CRYPTO_MD5_PPC) += md5-ppc.o 10obj-$(CONFIG_CRYPTO_SHA1_PPC) += sha1-powerpc.o 11obj-$(CONFIG_CRYPTO_SHA1_PPC_SPE) += sha1-ppc-spe.o 12obj-$(CONFIG_CRYPTO_AES_GCM_P10) += aes-gcm-p10-crypto.o 13obj-$(CONFIG_CRYPTO_DEV_VMX_ENCRYPT) += vmx-crypto.o 14obj-$(CONFIG_CRYPTO_CURVE25519_PPC64) += curve25519-ppc64le.o 15 16aes-ppc-spe-y := aes-spe-core.o aes-spe-keys.o aes-tab-4k.o aes-spe-modes.o aes-spe-glue.o 17md5-ppc-y := md5-asm.o md5-glue.o 18sha1-powerpc-y := sha1-powerpc-asm.o sha1.o 19sha1-ppc-spe-y := sha1-spe-asm.o sha1-spe-glue.o 20aes-gcm-p10-crypto-y := aes-gcm-p10-glue.o aes-gcm-p10.o ghashp10-ppc.o aesp10-ppc.o 21vmx-crypto-objs := vmx.o aesp8-ppc.o ghashp8-ppc.o aes.o aes_cbc.o aes_ctr.o aes_xts.o ghash.o 22curve25519-ppc64le-y := curve25519-ppc64le-core.o curve25519-ppc64le_asm.o 23 24ifeq ($(CONFIG_CPU_LITTLE_ENDIAN),y) 25override flavour := linux-ppc64le 26else 27ifdef CONFIG_PPC64_ELF_ABI_V2 28override flavour := linux-ppc64-elfv2 29else 30override flavour := linux-ppc64 31endif 32endif 33 34quiet_cmd_perl = PERL $@ 35 cmd_perl = $(PERL) $< $(flavour) > $@ 36 37targets += aesp10-ppc.S ghashp10-ppc.S aesp8-ppc.S ghashp8-ppc.S 38 39$(obj)/aesp10-ppc.S $(obj)/ghashp10-ppc.S: $(obj)/%.S: $(src)/%.pl FORCE 40 $(call if_changed,perl) 41 42$(obj)/aesp8-ppc.S $(obj)/ghashp8-ppc.S: $(obj)/%.S: $(src)/%.pl FORCE 43 $(call if_changed,perl) 44 45OBJECT_FILES_NON_STANDARD_aesp10-ppc.o := y 46OBJECT_FILES_NON_STANDARD_ghashp10-ppc.o := y 47OBJECT_FILES_NON_STANDARD_aesp8-ppc.o := y 48OBJECT_FILES_NON_STANDARD_ghashp8-ppc.o := y 49