diff --git a/arch.mk b/arch.mk index f015647432..9f4ae9a989 100644 --- a/arch.mk +++ b/arch.mk @@ -1361,6 +1361,7 @@ ifeq ($(TARGET),lpc55s69) -I$(MCUXPRESSO)/drivers/iap1 \ -I$(MCUXPRESSO)/drivers/lpc_gpio \ -I$(MCUXPRESSO)/drivers/lpc_iocon \ + -I$(MCUXPRESSO)/drivers/puf \ -I$(MCUXPRESSO)/drivers/rng_1 \ -I$(MCUXPRESSO_CMSIS)/Include \ -I$(MCUXPRESSO_CMSIS)/Core/Include @@ -1392,6 +1393,12 @@ ifeq ($(TARGET),lpc55s69) $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/casper_port.o \ $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/hashcrypt_port.o endif + ifeq ($(HWPUF),1) + CFLAGS+=-DWOLFSSL_HWPUF -DWOLFSSL_NXP_PUF + OBJS+=\ + $(MCUXPRESSO)/drivers/puf/fsl_puf.o \ + $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/hwpuf_port.o + endif endif ifeq ($(TARGET),psoc6) diff --git a/config/examples/lpc55s69-hwpuf.config b/config/examples/lpc55s69-hwpuf.config new file mode 100644 index 0000000000..7d0d252597 --- /dev/null +++ b/config/examples/lpc55s69-hwpuf.config @@ -0,0 +1,44 @@ +ARCH?=ARM +TZEN?=0 +TARGET?=lpc55s69 +SIGN?=ECC384 +HASH?=SHA256 +MCUXSDK?=1 +MCUXPRESSO?=$(PWD)/../NXP/mcuxpresso-sdk/mcuxsdk +MCUXPRESSO_CMSIS?=$(PWD)/../NXP/CMSIS_5/CMSIS +MCUXPRESSO_CPU?=LPC55S69JBD100_cm33_core0 +MCUXPRESSO_DRIVERS?=$(MCUXPRESSO)/devices/LPC/LPC5500/LPC55S69 +MCUXPRESSO_PROJECT_TEMPLATE?=$(MCUXPRESSO)/examples/_boards/lpcxpresso55s69/project_template +DEBUG?=0 +DEBUG_UART?=1 +VTOR?=1 +CORTEX_M0?=0 +CORTEX_M33?=1 +NO_ASM?=0 +NO_MPU=1 +EXT_FLASH?=0 +SPI_FLASH?=0 +ALLOW_DOWNGRADE?=0 +NVM_FLASH_WRITEONCE?=1 +NO_ARM_ASM=1 +WOLFBOOT_VERSION?=0 +V?=0 +SPMATH?=1 +RAM_CODE?=1 +DUALBANK_SWAP?=0 +FLASH_MULTI_SECTOR_ERASE?=1 + +# Turn on or off hw acceleration of crypto algs in the lpc55s69 +PKA?=0 +# Turn on or off hw puf +HWPUF?=1 + +WOLFBOOT_SECTOR_SIZE?=0x200 + +# use these for test/benchmark +WOLFBOOT_PARTITION_SIZE?=0x2b000 +WOLFBOOT_PARTITION_BOOT_ADDRESS?=0x10000 +WOLFBOOT_PARTITION_UPDATE_ADDRESS?=0x3b000 +WOLFBOOT_PARTITION_SWAP_ADDRESS?=0x66000 + +WOLFCRYPT_TEST?=1 diff --git a/test-app/Makefile b/test-app/Makefile index 7fc2c19c76..d4374c39f0 100644 --- a/test-app/Makefile +++ b/test-app/Makefile @@ -805,6 +805,12 @@ ifeq ($(TARGET),lpc55s69) $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/casper_port.o \ $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/hashcrypt_port.o endif + ifeq ($(HWPUF),1) + CFLAGS+=-DWOLFSSL_HWPUF -DWOLFSSL_NXP_PUF + APP_OBJS+=\ + $(MCUXPRESSO)/drivers/puf/fsl_puf.o \ + $(WOLFBOOT_LIB_WOLFSSL)/wolfcrypt/src/port/nxp/hwpuf_port.o + endif ifeq ($(WOLFCRYPT_SUPPORT),1) LDFLAGS+=--specs=nano.specs endif