1 # SPDX-License-Identifier: GPL-2.0
3 # powerpc/crypto/Makefile
5 # Arch-specific CryptoAPI modules.
8 obj-
$(CONFIG_CRYPTO_AES_PPC_SPE
) += aes-ppc-spe.o
9 obj-
$(CONFIG_CRYPTO_MD5_PPC
) += md5-ppc.o
10 obj-
$(CONFIG_CRYPTO_SHA1_PPC
) += sha1-powerpc.o
11 obj-
$(CONFIG_CRYPTO_SHA1_PPC_SPE
) += sha1-ppc-spe.o
12 obj-
$(CONFIG_CRYPTO_SHA256_PPC_SPE
) += sha256-ppc-spe.o
13 obj-
$(CONFIG_CRYPTO_CRC32C_VPMSUM
) += crc32c-vpmsum.o
14 obj-
$(CONFIG_CRYPTO_CRCT10DIF_VPMSUM
) += crct10dif-vpmsum.o
15 obj-
$(CONFIG_CRYPTO_VPMSUM_TESTER
) += crc-vpmsum_test.o
16 obj-
$(CONFIG_CRYPTO_AES_GCM_P10
) += aes-gcm-p10-crypto.o
17 obj-
$(CONFIG_CRYPTO_CHACHA20_P10
) += chacha-p10-crypto.o
18 obj-
$(CONFIG_CRYPTO_POLY1305_P10
) += poly1305-p10-crypto.o
19 obj-
$(CONFIG_CRYPTO_DEV_VMX_ENCRYPT
) += vmx-crypto.o
20 obj-
$(CONFIG_CRYPTO_CURVE25519_PPC64
) += curve25519-ppc64le.o
22 aes-ppc-spe-y
:= aes-spe-core.o aes-spe-keys.o aes-tab-4k.o aes-spe-modes.o aes-spe-glue.o
23 md5-ppc-y
:= md5-asm.o md5-glue.o
24 sha1-powerpc-y
:= sha1-powerpc-asm.o sha1.o
25 sha1-ppc-spe-y
:= sha1-spe-asm.o sha1-spe-glue.o
26 sha256-ppc-spe-y
:= sha256-spe-asm.o sha256-spe-glue.o
27 crc32c-vpmsum-y
:= crc32c-vpmsum_asm.o crc32c-vpmsum_glue.o
28 crct10dif-vpmsum-y
:= crct10dif-vpmsum_asm.o crct10dif-vpmsum_glue.o
29 aes-gcm-p10-crypto-y
:= aes-gcm-p10-glue.o aes-gcm-p10.o ghashp10-ppc.o aesp10-ppc.o
30 chacha-p10-crypto-y
:= chacha-p10-glue.o chacha-p10le-8x.o
31 poly1305-p10-crypto-y
:= poly1305-p10-glue.o poly1305-p10le_64.o
32 vmx-crypto-objs
:= vmx.o aesp8-ppc.o ghashp8-ppc.o aes.o aes_cbc.o aes_ctr.o aes_xts.o ghash.o
33 curve25519-ppc64le-y
:= curve25519-ppc64le-core.o curve25519-ppc64le_asm.o
35 ifeq ($(CONFIG_CPU_LITTLE_ENDIAN
),y
)
36 override flavour
:= linux-ppc64le
38 ifdef CONFIG_PPC64_ELF_ABI_V2
39 override flavour
:= linux-ppc64-elfv2
41 override flavour
:= linux-ppc64
45 quiet_cmd_perl
= PERL
$@
46 cmd_perl
= $(PERL
) $< $(flavour
) > $@
48 targets
+= aesp10-ppc.S ghashp10-ppc.S aesp8-ppc.S ghashp8-ppc.S
50 $(obj
)/aesp10-ppc.S
$(obj
)/ghashp10-ppc.S
: $(obj
)/%.S
: $(src
)/%.pl FORCE
51 $(call if_changed
,perl
)
53 $(obj
)/aesp8-ppc.S
$(obj
)/ghashp8-ppc.S
: $(obj
)/%.S
: $(src
)/%.pl FORCE
54 $(call if_changed
,perl
)
56 OBJECT_FILES_NON_STANDARD_aesp10-ppc.o
:= y
57 OBJECT_FILES_NON_STANDARD_ghashp10-ppc.o
:= y
58 OBJECT_FILES_NON_STANDARD_aesp8-ppc.o
:= y