xref: /linux/arch/powerpc/crypto/Makefile (revision 37b33c68b00089a574ebd0a856a5d554eb3001b7)
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_SHA256_PPC_SPE) += sha256-ppc-spe.o
13obj-$(CONFIG_CRYPTO_AES_GCM_P10) += aes-gcm-p10-crypto.o
14obj-$(CONFIG_CRYPTO_CHACHA20_P10) += chacha-p10-crypto.o
15obj-$(CONFIG_CRYPTO_POLY1305_P10) += poly1305-p10-crypto.o
16obj-$(CONFIG_CRYPTO_DEV_VMX_ENCRYPT) += vmx-crypto.o
17obj-$(CONFIG_CRYPTO_CURVE25519_PPC64) += curve25519-ppc64le.o
18
19aes-ppc-spe-y := aes-spe-core.o aes-spe-keys.o aes-tab-4k.o aes-spe-modes.o aes-spe-glue.o
20md5-ppc-y := md5-asm.o md5-glue.o
21sha1-powerpc-y := sha1-powerpc-asm.o sha1.o
22sha1-ppc-spe-y := sha1-spe-asm.o sha1-spe-glue.o
23sha256-ppc-spe-y := sha256-spe-asm.o sha256-spe-glue.o
24aes-gcm-p10-crypto-y := aes-gcm-p10-glue.o aes-gcm-p10.o ghashp10-ppc.o aesp10-ppc.o
25chacha-p10-crypto-y := chacha-p10-glue.o chacha-p10le-8x.o
26poly1305-p10-crypto-y := poly1305-p10-glue.o poly1305-p10le_64.o
27vmx-crypto-objs := vmx.o aesp8-ppc.o ghashp8-ppc.o aes.o aes_cbc.o aes_ctr.o aes_xts.o ghash.o
28curve25519-ppc64le-y := curve25519-ppc64le-core.o curve25519-ppc64le_asm.o
29
30ifeq ($(CONFIG_CPU_LITTLE_ENDIAN),y)
31override flavour := linux-ppc64le
32else
33ifdef CONFIG_PPC64_ELF_ABI_V2
34override flavour := linux-ppc64-elfv2
35else
36override flavour := linux-ppc64
37endif
38endif
39
40quiet_cmd_perl = PERL    $@
41      cmd_perl = $(PERL) $< $(flavour) > $@
42
43targets += aesp10-ppc.S ghashp10-ppc.S aesp8-ppc.S ghashp8-ppc.S
44
45$(obj)/aesp10-ppc.S $(obj)/ghashp10-ppc.S: $(obj)/%.S: $(src)/%.pl FORCE
46	$(call if_changed,perl)
47
48$(obj)/aesp8-ppc.S $(obj)/ghashp8-ppc.S: $(obj)/%.S: $(src)/%.pl FORCE
49	$(call if_changed,perl)
50
51OBJECT_FILES_NON_STANDARD_aesp10-ppc.o := y
52OBJECT_FILES_NON_STANDARD_ghashp10-ppc.o := y
53OBJECT_FILES_NON_STANDARD_aesp8-ppc.o := y
54