|
1 | 1 | WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/asn.o |
| 2 | + |
| 3 | +# Shared wolfHSM client/server object lists. Defined here at the top so any |
| 4 | +# downstream block (legacy WOLFHSM_CLIENT/SERVER, or WOLFCRYPT_TZ_WOLFHSM TZ |
| 5 | +# engine) can reference them by variable name without ordering hazards. |
| 6 | +WOLFHSM_CLIENT_OBJS := \ |
| 7 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client.o \ |
| 8 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_nvm.o \ |
| 9 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_cryptocb.o \ |
| 10 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_crypto.o \ |
| 11 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_dma.o \ |
| 12 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_crypto.o \ |
| 13 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_dma.o \ |
| 14 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_utils.o \ |
| 15 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_comm.o \ |
| 16 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_comm.o \ |
| 17 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_nvm.o \ |
| 18 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_customcb.o |
| 19 | + |
| 20 | +WOLFHSM_SERVER_OBJS := \ |
| 21 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_utils.o \ |
| 22 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_comm.o \ |
| 23 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_nvm.o \ |
| 24 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_nvm_flash.o \ |
| 25 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_keyid.o \ |
| 26 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_flash_unit.o \ |
| 27 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_crypto.o \ |
| 28 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server.o \ |
| 29 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_nvm.o \ |
| 30 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_crypto.o \ |
| 31 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_counter.o \ |
| 32 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_keystore.o \ |
| 33 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_customcb.o \ |
| 34 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_customcb.o \ |
| 35 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_keystore.o \ |
| 36 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_crypto.o \ |
| 37 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_counter.o \ |
| 38 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_nvm.o \ |
| 39 | + $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_comm.o |
| 40 | + |
2 | 41 | USE_CLANG?=0 |
3 | 42 | ifeq ($(USE_CLANG),1) |
4 | 43 | USE_GCC?=0 |
@@ -1095,14 +1134,39 @@ ifeq ($(WOLFCRYPT_TZ_WOLFHSM),1) |
1095 | 1134 | CFLAGS+=-DWOLFCRYPT_SECURE_MODE |
1096 | 1135 | CFLAGS+=-DWOLFHSM_CFG_ENABLE_SERVER |
1097 | 1136 | CFLAGS+=-DWOLFHSM_CFG_COMM_DATA_LEN=1280 |
| 1137 | + CFLAGS+=-DWOLFHSM_CFG_PORT_STM32_TZ_NSC |
| 1138 | + CFLAGS+=-DWOLFHSM_CFG_NO_SYS_TIME |
1098 | 1139 | CFLAGS+=-I"$(WOLFBOOT_LIB_WOLFHSM)" |
| 1140 | + CFLAGS+=-I"$(WOLFBOOT_LIB_WOLFHSM)/port/stmicro/stm32-tz" |
1099 | 1141 | ifeq ($(USE_CLANG),1) |
1100 | 1142 | CLANG_MULTILIB_FLAGS:=$(filter -mthumb -mlittle-endian,$(LDFLAGS)) $(filter -mcpu=%,$(CFLAGS)) |
1101 | 1143 | LIBS+=$(shell $(CLANG_GCC_NAME) $(CLANG_MULTILIB_FLAGS) -print-file-name=libc.a) |
1102 | 1144 | LIBS+=$(shell $(CLANG_GCC_NAME) $(CLANG_MULTILIB_FLAGS) -print-libgcc-file-name) |
1103 | 1145 | else |
1104 | 1146 | LDFLAGS+=--specs=nano.specs |
1105 | 1147 | endif |
| 1148 | + WOLFCRYPT_OBJS+=src/store_sbrk.o |
| 1149 | + WOLFCRYPT_OBJS+=src/wolfhsm_callable.o |
| 1150 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/cryptocb.o |
| 1151 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/coding.o |
| 1152 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/hmac.o |
| 1153 | + ifneq ($(SIGN),ED25519) |
| 1154 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/sha512.o |
| 1155 | + endif |
| 1156 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/wc_encrypt.o |
| 1157 | + ifeq ($(ENCRYPT_WITH_AES128)$(ENCRYPT_WITH_AES256),) |
| 1158 | + WOLFCRYPT_OBJS+=$(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/aes.o |
| 1159 | + endif |
| 1160 | + WOLFCRYPT_OBJS+=$(RSA_OBJS) |
| 1161 | + ifeq ($(findstring ECC,$(SIGN)),) |
| 1162 | + ifeq ($(findstring ECC,$(SIGN_SECONDARY)),) |
| 1163 | + WOLFCRYPT_OBJS+=$(ECC_OBJS) |
| 1164 | + WOLFCRYPT_OBJS+=$(MATH_OBJS) |
| 1165 | + endif |
| 1166 | + endif |
| 1167 | + WOLFHSM_OBJS+=$(WOLFHSM_SERVER_OBJS) |
| 1168 | + WOLFHSM_OBJS+=$(WOLFBOOT_LIB_WOLFHSM)/src/wh_flash_ramsim.o |
| 1169 | + WOLFHSM_OBJS+=$(WOLFBOOT_LIB_WOLFHSM)/port/stmicro/stm32-tz/wh_transport_nsc.o |
1106 | 1170 | STACK_USAGE=20000 |
1107 | 1171 | endif |
1108 | 1172 |
|
@@ -1301,44 +1365,6 @@ ifneq ($(WOLFBOOT_PART_ID),) |
1301 | 1365 | SIGN_OPTIONS+=--id $(WOLFBOOT_PART_ID) |
1302 | 1366 | endif |
1303 | 1367 |
|
1304 | | -# Shared wolfHSM client/server object lists. Both the legacy WOLFHSM_CLIENT=1 / |
1305 | | -# WOLFHSM_SERVER=1 flags and the WOLFCRYPT_TZ_WOLFHSM=1 TZ engine reference |
1306 | | -# these to avoid object-list duplication. |
1307 | | -WOLFHSM_CLIENT_OBJS := \ |
1308 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client.o \ |
1309 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_nvm.o \ |
1310 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_cryptocb.o \ |
1311 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_crypto.o \ |
1312 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_client_dma.o \ |
1313 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_crypto.o \ |
1314 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_dma.o \ |
1315 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_utils.o \ |
1316 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_comm.o \ |
1317 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_comm.o \ |
1318 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_nvm.o \ |
1319 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_customcb.o |
1320 | | - |
1321 | | -WOLFHSM_SERVER_OBJS := \ |
1322 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_utils.o \ |
1323 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_comm.o \ |
1324 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_nvm.o \ |
1325 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_nvm_flash.o \ |
1326 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_keyid.o \ |
1327 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_flash_unit.o \ |
1328 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_crypto.o \ |
1329 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server.o \ |
1330 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_nvm.o \ |
1331 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_crypto.o \ |
1332 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_counter.o \ |
1333 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_keystore.o \ |
1334 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_server_customcb.o \ |
1335 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_customcb.o \ |
1336 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_keystore.o \ |
1337 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_crypto.o \ |
1338 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_counter.o \ |
1339 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_nvm.o \ |
1340 | | - $(WOLFBOOT_LIB_WOLFHSM)/src/wh_message_comm.o |
1341 | | - |
1342 | 1368 | # wolfHSM client options |
1343 | 1369 | ifeq ($(WOLFHSM_CLIENT),1) |
1344 | 1370 | WOLFCRYPT_OBJS += \ |
|
0 commit comments