Merge pull request #3 from wolfSSL/update-wolfboot-1.4

FreeRTOS example updated
pull/6/head
Daniele Lacamera 2020-02-22 07:19:18 +01:00 committed by GitHub
commit a5d8215c29
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 40 additions and 32 deletions

View File

@ -22,7 +22,8 @@ CFLAGS+=-mthumb -Wall -Wextra -Wno-main -Wstack-usage=1024 -ffreestanding -Wno-u
-Ilib/bootutil/include -Iinclude/ -Ilib/wolfssl -I$(FREERTOS_PORT) -nostartfiles \
-IfreeRTOS -IfreeRTOS/include -I build/include -I$(WOLFBOOT)/include -I$(WOLFBOOT) \
-DWOLFSSL_USER_SETTINGS -I$(WOLFSSL_ROOT) -DPICO_PORT_CUSTOM \
-mthumb -mlittle-endian -mthumb-interwork -ffreestanding -fno-exceptions
-mthumb -mlittle-endian -mthumb-interwork -ffreestanding -fno-exceptions \
-DWOLFBOOT_HASH_SHA256
ifneq ($(DEBUG),0)
CFLAGS+=-O0 -ggdb3
@ -98,7 +99,6 @@ WOLFSSL_OBJS += \
$(WOLFSSL_BUILD)/wolfcrypt/wc_encrypt.o \
$(WOLFSSL_BUILD)/wolfcrypt/wc_port.o \
$(WOLFSSL_BUILD)/wolfcrypt/wolfmath.o \
$(WOLFSSL_BUILD)/wolfcrypt/tfm.o \
$(WOLFSSL_BUILD)/tls13.o
OBJS_SPMATH:= $(WOLFSSL_BUILD)/wolfcrypt/sp_c32.o \
@ -112,11 +112,11 @@ vpath %.c $(dir $(WOLFSSL_ROOT)/wolfcrypt/src)
wolfboot:LSCRIPT:=k64f_wolfboot.ld
wolfboot: image.bin wolfboot-align.bin
python3 ../wolfBoot/tools/keytools/sign.py image.bin ../wolfBoot/ed25519.der 1
python3 ../wolfBoot/tools/keytools/sign.py --ecc256 image.bin ../wolfBoot/ecc256.der 1
cat wolfboot-align.bin image_v1_signed.bin >factory.bin
sleep 1
touch image.bin
python3 ../wolfBoot/tools/keytools/sign.py image.bin ../wolfBoot/ed25519.der 2
python3 ../wolfBoot/tools/keytools/sign.py --ecc256 image.bin ../wolfBoot/ecc256.der 2
wolfboot-align.bin:CFLAGS=-mthumb -Wall -Wextra -Wno-main -Wstack-usage=1024 -ffreestanding -Wno-unused \
-Isrc \
@ -126,18 +126,11 @@ wolfboot-align.bin:CFLAGS=-mthumb -Wall -Wextra -Wno-main -Wstack-usage=1024 -ff
-mthumb -mlittle-endian -mthumb-interwork -ffreestanding -fno-exceptions
wolfboot-align.bin:CFLAGS+=-I$(KINETIS_DRIVERS)/drivers -I$(KINETIS_DRIVERS) -DCPU_MK64FN1M0VLL12 -I$(KINETIS_CMSIS)/Include -I$(PHY) -DDEBUG_CONSOLE_ASSERT_DISABLE=1 -mcpu=cortex-m3 -DNVM_FLASH_WRITEONCE=1
wolfboot-align.bin:LDFLAGS=$(CFLAGS) -Wl,-gc-sections -ffreestanding -nostartfiles -lc -lnosys -specs=nano.specs -Wl,-Map=image.map
wolfboot-align.bin:
make -C ../wolfBoot TARGET=kinetis NVM_FLASH_WRITEONCE=1 clean
wolfboot-align.bin: wolfboot_target
rm -f ../wolfBoot/hal/kinetis.o
rm -f ../wolfBoot/src/*.o
rm -f $(KINETIS_DRIVERS)/drivers/*.o
make -C ../wolfBoot TARGET=kinetis DEBUG=$(DEBUG) NVM_FLASH_WRITEONCE=1 \
WOLFBOOT_SECTOR_SIZE=0x1000 \
WOLFBOOT_PARTITION_SIZE=0x7A000 \
WOLFBOOT_PARTITION_BOOT_ADDRESS=0xA000 \
WOLFBOOT_PARTITION_UPDATE_ADDRESS=0x84000 \
WOLFBOOT_PARTITION_SWAP_ADDRESS=0xff000 \
wolfboot-align.bin
make -C ../wolfBoot wolfboot-align.bin
cp ../wolfBoot/wolfboot-align.bin .
standalone:LSCRIPT:=k64f_standalone.ld
@ -165,15 +158,16 @@ $(WOLFSSL_BUILD)/%.o: $(WOLFSSL_ROOT)/src/%.c
$(WOLFSSL_BUILD)/wolfcrypt/%.o: $(WOLFSSL_ROOT)/wolfcrypt/src/%.c
$(CC) -c -o $(@) $(CFLAGS) $^
image.bin: image.elf
$(OBJCOPY) -O binary $^ $@
image.bin: image.elf wolfboot_target
$(OBJCOPY) -O binary image.elf $@
$(SIZE) image.elf
image.hex: image.elf
$(OBJCOPY) -O ihex $^ $@
wolfboot_target: FORCE
cp -f src/target.h ../wolfBoot/include/
cp -f src/wolfboot.config ../wolfBoot/.config
make -C ../wolfBoot include/target.h
image.elf: wolfboot_target $(WOLFSSL_BUILD)/wolfcrypt $(LIBS) $(OBJS) $(LSCRIPT)
$(LD) $(LDFLAGS) -Wl,--start-group $(OBJS) $(LIBS) -Wl,--end-group -o $@ -T $(LSCRIPT)

View File

@ -1,15 +0,0 @@
#ifndef H_TARGETS_TARGET_
#define H_TARGETS_TARGET_
/* Kinetis K64F flash partitioning.
* Firmware Entry point at 0x8100
*/
#define WOLFBOOT_SECTOR_SIZE 0x1000
#define WOLFBOOT_PARTITION_SIZE 0x7A000
#define WOLFBOOT_PARTITION_BOOT_ADDRESS 0xA000
#define WOLFBOOT_PARTITION_UPDATE_ADDRESS 0x84000
#define WOLFBOOT_PARTITION_SWAP_ADDRESS 0xff000
#endif

View File

@ -0,0 +1,29 @@
ARCH?=ARM
TARGET?=kinetis
SIGN?=ECC256
HASH?=SHA256
KINETIS?=$(HOME)/src/FRDM-K64F
KINETIS_CPU?=MK64FN1M0VLL12
KINETIS_DRIVERS?=$(KINETIS)/devices/MK64F12
KINETIS_CMSIS?=$(HOME)/src/FRDM-K64F/CMSIS
FREEDOM_E_SDK?=$(HOME)/src/freedom-e-sdk
DEBUG?=0
VTOR?=1
CORTEX_M0?=0
NO_ASM?=0
EXT_FLASH?=0
SPI_FLASH?=0
ALLOW_DOWNGRADE?=0
NVM_FLASH_WRITEONCE?=1
WOLFBOOT_VERSION?=0
V?=0
SPMATH?=1
RAM_CODE?=0
DUALBANK_SWAP?=0
IMAGE_HEADER_SIZE?=256
PKA?=0
WOLFBOOT_PARTITION_SIZE?=0x7A000
WOLFBOOT_SECTOR_SIZE?=0x1000
WOLFBOOT_PARTITION_BOOT_ADDRESS?=0xA000
WOLFBOOT_PARTITION_UPDATE_ADDRESS?=0x84000
WOLFBOOT_PARTITION_SWAP_ADDRESS?=0xff000

@ -1 +1 @@
Subproject commit 1c6ea8d7325beba386e3c1007720a8e143539e35
Subproject commit 19f328cffdd1fe65b9ed764d4812adada3c819cf