blob: e66c2018d97053c48f9770752039709edacfa8e2 [file] [log] [blame]
Raymond Mao87010c32024-10-03 14:50:15 -07001# SPDX-License-Identifier: GPL-2.0+
2#
3# Copyright (c) 2024 Linaro Limited
4# Author: Raymond Mao <raymond.mao@linaro.org>
5
6MBEDTLS_LIB_DIR = external/mbedtls/library
7
Raymond Maof51f3552024-10-03 14:50:19 -07008# shim layer for hash
9obj-$(CONFIG_$(SPL_)MD5_MBEDTLS) += md5.o
10obj-$(CONFIG_$(SPL_)SHA1_MBEDTLS) += sha1.o
11obj-$(CONFIG_$(SPL_)SHA256_MBEDTLS) += sha256.o
12obj-$(CONFIG_$(SPL_)SHA512_MBEDTLS) += sha512.o
13
Raymond Mao702817b2024-10-03 14:50:28 -070014# x509 libraries
15obj-$(CONFIG_$(SPL_)ASYMMETRIC_PUBLIC_KEY_MBEDTLS) += \
16 public_key.o
Raymond Mao7deec0f2024-10-03 14:50:30 -070017obj-$(CONFIG_$(SPL_)X509_CERTIFICATE_PARSER_MBEDTLS) += \
18 x509_cert_parser.o
Raymond Mao7b3dfd02024-10-03 14:50:32 -070019obj-$(CONFIG_$(SPL_)PKCS7_MESSAGE_PARSER_MBEDTLS) += pkcs7_parser.o
Raymond Maocd17ac22024-10-03 14:50:34 -070020obj-$(CONFIG_$(SPL_)MSCODE_PARSER_MBEDTLS) += mscode_parser.o
Raymond Mao42948e82024-10-03 14:50:36 -070021obj-$(CONFIG_$(SPL_)RSA_PUBLIC_KEY_PARSER_MBEDTLS) += rsa_helper.o
Raymond Mao702817b2024-10-03 14:50:28 -070022
Raymond Mao87010c32024-10-03 14:50:15 -070023# MbedTLS crypto library
24obj-$(CONFIG_MBEDTLS_LIB) += mbedtls_lib_crypto.o
25mbedtls_lib_crypto-y := \
26 $(MBEDTLS_LIB_DIR)/platform_util.o \
27 $(MBEDTLS_LIB_DIR)/constant_time.o \
28 $(MBEDTLS_LIB_DIR)/md.o
Ilias Apalodimas9f75dc12024-11-10 10:28:37 +020029
Raymond Maof51f3552024-10-03 14:50:19 -070030mbedtls_lib_crypto-$(CONFIG_$(SPL_)MD5_MBEDTLS) += $(MBEDTLS_LIB_DIR)/md5.o
31mbedtls_lib_crypto-$(CONFIG_$(SPL_)SHA1_MBEDTLS) += $(MBEDTLS_LIB_DIR)/sha1.o
32mbedtls_lib_crypto-$(CONFIG_$(SPL_)SHA256_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070033 $(MBEDTLS_LIB_DIR)/sha256.o
Raymond Maof51f3552024-10-03 14:50:19 -070034mbedtls_lib_crypto-$(CONFIG_$(SPL_)SHA512_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070035 $(MBEDTLS_LIB_DIR)/sha512.o
Philippe Reynes1db678a2024-12-19 14:05:48 +010036mbedtls_lib_crypto-$(CONFIG_$(SPL_)HKDF_MBEDTLS) += \
37 $(MBEDTLS_LIB_DIR)/hkdf.o
Raymond Mao87010c32024-10-03 14:50:15 -070038
39# MbedTLS X509 library
40obj-$(CONFIG_MBEDTLS_LIB_X509) += mbedtls_lib_x509.o
41mbedtls_lib_x509-y := $(MBEDTLS_LIB_DIR)/x509.o
Raymond Mao2faa4bd2024-10-03 14:50:38 -070042mbedtls_lib_x509-$(CONFIG_$(SPL_)ASN1_DECODER_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070043 $(MBEDTLS_LIB_DIR)/asn1parse.o \
44 $(MBEDTLS_LIB_DIR)/asn1write.o \
45 $(MBEDTLS_LIB_DIR)/oid.o
Raymond Mao42948e82024-10-03 14:50:36 -070046mbedtls_lib_x509-$(CONFIG_$(SPL_)RSA_PUBLIC_KEY_PARSER_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070047 $(MBEDTLS_LIB_DIR)/bignum.o \
48 $(MBEDTLS_LIB_DIR)/bignum_core.o \
49 $(MBEDTLS_LIB_DIR)/rsa.o \
50 $(MBEDTLS_LIB_DIR)/rsa_alt_helpers.o
Raymond Mao702817b2024-10-03 14:50:28 -070051mbedtls_lib_x509-$(CONFIG_$(SPL_)ASYMMETRIC_PUBLIC_KEY_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070052 $(MBEDTLS_LIB_DIR)/pk.o \
53 $(MBEDTLS_LIB_DIR)/pk_wrap.o \
54 $(MBEDTLS_LIB_DIR)/pkparse.o
Raymond Mao7deec0f2024-10-03 14:50:30 -070055mbedtls_lib_x509-$(CONFIG_$(SPL_)X509_CERTIFICATE_PARSER_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070056 $(MBEDTLS_LIB_DIR)/x509_crl.o \
57 $(MBEDTLS_LIB_DIR)/x509_crt.o
Raymond Mao7b3dfd02024-10-03 14:50:32 -070058mbedtls_lib_x509-$(CONFIG_$(SPL_)PKCS7_MESSAGE_PARSER_MBEDTLS) += \
Raymond Mao87010c32024-10-03 14:50:15 -070059 $(MBEDTLS_LIB_DIR)/pkcs7.o
Ilias Apalodimas9f75dc12024-11-10 10:28:37 +020060
61#mbedTLS TLS support
62obj-$(CONFIG_MBEDTLS_LIB_TLS) += mbedtls_lib_tls.o
63mbedtls_lib_tls-y := \
64 $(MBEDTLS_LIB_DIR)/mps_reader.o \
65 $(MBEDTLS_LIB_DIR)/mps_trace.o \
66 $(MBEDTLS_LIB_DIR)/net_sockets.o \
67 $(MBEDTLS_LIB_DIR)/pk_ecc.o \
68 $(MBEDTLS_LIB_DIR)/ssl_cache.o \
69 $(MBEDTLS_LIB_DIR)/ssl_ciphersuites.o \
70 $(MBEDTLS_LIB_DIR)/ssl_client.o \
71 $(MBEDTLS_LIB_DIR)/ssl_cookie.o \
72 $(MBEDTLS_LIB_DIR)/ssl_debug_helpers_generated.o \
73 $(MBEDTLS_LIB_DIR)/ssl_msg.o \
74 $(MBEDTLS_LIB_DIR)/ssl_ticket.o \
75 $(MBEDTLS_LIB_DIR)/ssl_tls.o \
76 $(MBEDTLS_LIB_DIR)/ssl_tls12_client.o \
77 $(MBEDTLS_LIB_DIR)/hmac_drbg.o \
78 $(MBEDTLS_LIB_DIR)/ctr_drbg.o \
79 $(MBEDTLS_LIB_DIR)/entropy.o \
80 $(MBEDTLS_LIB_DIR)/entropy_poll.o \
81 $(MBEDTLS_LIB_DIR)/aes.o \
82 $(MBEDTLS_LIB_DIR)/cipher.o \
83 $(MBEDTLS_LIB_DIR)/cipher_wrap.o \
84 $(MBEDTLS_LIB_DIR)/ecdh.o \
85 $(MBEDTLS_LIB_DIR)/ecdsa.o \
86 $(MBEDTLS_LIB_DIR)/ecp.o \
87 $(MBEDTLS_LIB_DIR)/ecp_curves.o \
88 $(MBEDTLS_LIB_DIR)/ecp_curves_new.o \
89 $(MBEDTLS_LIB_DIR)/gcm.o \