mirror of https://github.com/wolfSSL/wolfBoot.git
55 lines
2.1 KiB
Plaintext
55 lines
2.1 KiB
Plaintext
# TI LAUNCHXL-F28P55X (TMS320F28P550SJ, C2000 C28x DSP) - secure-boot MVP
|
|
#
|
|
# The C28x is a word-addressed, CHAR_BIT==16 DSP built with the TI cl2000
|
|
# compiler. wolfBoot runs from flash bank0 and XIP-boots a signed application
|
|
# resident in bank1. See docs/Targets.md and the port notes in hal/f28p55x.c.
|
|
#
|
|
# Build (point CGT_ROOT at a TI C2000 codegen install, C2000WARE at C2000Ware):
|
|
# cp config/examples/f28p55x.config .config
|
|
# make CGT_ROOT=$HOME/ti/ccs<ver>/ccs/tools/compiler/ti-cgt-c2000_<ver> \
|
|
# C2000WARE=$HOME/ti/C2000Ware_26_01_00_00
|
|
#
|
|
# Flash offset (bank0 codestart) is fixed by the arch in arch.mk:
|
|
# ARCH_FLASH_OFFSET=0x80000
|
|
|
|
ARCH?=C2000
|
|
TARGET?=f28p55x
|
|
SIGN?=ECC256
|
|
HASH?=SHA256
|
|
DEBUG?=0
|
|
# Route wolfBoot_printf to SCIA (GPIO28/29 -> XDS110 virtual COM, 115200 8N1)
|
|
DEBUG_UART?=1
|
|
VTOR?=0
|
|
CORTEX_M0?=0
|
|
NO_ASM?=1
|
|
NO_MPU?=1
|
|
EXT_FLASH?=0
|
|
SPI_FLASH?=0
|
|
ALLOW_DOWNGRADE?=0
|
|
# Fapi programs whole flash words with ECC; single-byte trailer writes are not
|
|
# possible, so use the whole-sector read-modify-write cache path.
|
|
NVM_FLASH_WRITEONCE?=1
|
|
WOLFBOOT_VERSION?=0
|
|
V?=0
|
|
# ECC P-256 verify via SP single-precision math (32-bit words, sp_c32.c).
|
|
SPMATH?=1
|
|
# HAL flash program/erase (Fapi) must execute from RAM.
|
|
RAM_CODE?=1
|
|
DUALBANK_SWAP?=0
|
|
|
|
# Flash bank map (word addresses; hardware banks are 0x80000, 0xA0000, 0xC0000,
|
|
# 0xE0000, 0x100000). wolfBoot owns bank0; BOOT is bank1, UPDATE bank2, SWAP
|
|
# bank3 (UPDATE/SWAP are declared for the phase-2 A/B update path and are not
|
|
# exercised by the MVP verify+jump). The signed app's codestart is linked at
|
|
# WOLFBOOT_PARTITION_BOOT_ADDRESS + IMAGE_HEADER_SIZE = 0xA0100.
|
|
#
|
|
# WOLFBOOT_SECTOR_SIZE must be >= IMAGE_HEADER_SIZE and match the Fapi erase
|
|
# granularity. Confirm the 2KB F28P55x sector in words against the Fapi sector
|
|
# table before relying on the phase-2 erase/trailer path; 0x800 is a safe
|
|
# conservative value for the MVP (no erase/write on the boot-critical path).
|
|
WOLFBOOT_SECTOR_SIZE?=0x800
|
|
WOLFBOOT_PARTITION_SIZE?=0x20000
|
|
WOLFBOOT_PARTITION_BOOT_ADDRESS?=0xA0000
|
|
WOLFBOOT_PARTITION_UPDATE_ADDRESS?=0xC0000
|
|
WOLFBOOT_PARTITION_SWAP_ADDRESS?=0xE0000
|