1d6699d29SAndrew Turner# $FreeBSD$
2d6699d29SAndrew Turner
3193d9e76SEnji Cooper.PATH: ${SRCTOP}/sys/crypto/armv8
4*f76393a6SOleksandr Tymoshenko.PATH: ${SRCTOP}/sys/crypto/openssl/aarch64
5d6699d29SAndrew Turner
6d6699d29SAndrew TurnerKMOD=	armv8crypto
7d6699d29SAndrew TurnerSRCS=	armv8_crypto.c
8d6699d29SAndrew TurnerSRCS+=	device_if.h bus_if.h opt_bus.h cryptodev_if.h
9d6699d29SAndrew Turner
10*f76393a6SOleksandr TymoshenkoOBJS+=	armv8_crypto_wrap.o aesv8-armx.o ghashv8-armx.o
11d6699d29SAndrew Turner
12d6699d29SAndrew Turner# Remove -nostdinc so we can get the intrinsics.
13d6699d29SAndrew Turnerarmv8_crypto_wrap.o: armv8_crypto_wrap.c
14d6699d29SAndrew Turner	${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc:N-mgeneral-regs-only} \
15a9dc38deSAndrew Turner	    -I${SRCTOP}/sys/crypto/armv8 \
16d6699d29SAndrew Turner	    ${WERROR} ${PROF} \
173f32b92bSAndrew Turner	     -march=armv8-a+crypto ${.IMPSRC}
18d6699d29SAndrew Turner	${CTFCONVERT_CMD}
19d6699d29SAndrew Turner
20*f76393a6SOleksandr Tymoshenkoaesv8-armx.o: aesv8-armx.S
21*f76393a6SOleksandr Tymoshenko	${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc:N-mgeneral-regs-only} \
22*f76393a6SOleksandr Tymoshenko	    -I${SRCTOP}/sys/crypto/armv8 \
23*f76393a6SOleksandr Tymoshenko	    -I${SRCTOP}/sys/crypto/openssl/crypto \
24*f76393a6SOleksandr Tymoshenko	    ${WERROR} ${PROF} \
25*f76393a6SOleksandr Tymoshenko	    -march=armv8-a+crypto ${.IMPSRC}
26*f76393a6SOleksandr Tymoshenko	${CTFCONVERT_CMD}
27*f76393a6SOleksandr Tymoshenko
28*f76393a6SOleksandr Tymoshenkoghashv8-armx.o: ghashv8-armx.S
29*f76393a6SOleksandr Tymoshenko	${CC} -c ${CFLAGS:C/^-O2$/-O3/:N-nostdinc:N-mgeneral-regs-only} \
30*f76393a6SOleksandr Tymoshenko	    -I${SRCTOP}/sys/crypto/armv8 \
31*f76393a6SOleksandr Tymoshenko	    -I${SRCTOP}/sys/crypto/openssl/crypto \
32*f76393a6SOleksandr Tymoshenko	    ${WERROR} ${PROF} \
33*f76393a6SOleksandr Tymoshenko	    -march=armv8-a+crypto ${.IMPSRC}
34*f76393a6SOleksandr Tymoshenko	${CTFCONVERT_CMD}
35*f76393a6SOleksandr Tymoshenko
36d6699d29SAndrew Turnerarmv8_crypto_wrap.o: armv8_crypto.h
37d6699d29SAndrew Turner
38d6699d29SAndrew Turner.include <bsd.kmod.mk>
39