Source code for the Trusted Boot Module.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
S.J.R. van Schaik 8723a6e78d make: disable LTO as it discards the ISRs 6 years ago
include stm32f1: jtag: add command to enable/disable JTAG 6 years ago
libopencm3@0fd4f74ee3 opencm3: update to 2019-02-15 6 years ago
scripts make: disable LTO as it discards the ISRs 6 years ago
source stm32f1: jtag: add command to enable/disable JTAG 6 years ago
support make: stm32f1: update linker script path 6 years ago
.gitmodules submodule: add libopencm3 8 years ago
Makefile make: disable LTO as it discards the ISRs 6 years ago
README readme: initial version 7 years ago
flash.scr tbm: initial commit 8 years ago

README

Prerequisites
=============

A cross-compiler targetting ARMv6 or ARMv7-M such as the GNU ARM Embedded Toolchain is required to build the source code for the Trusted Boot Module.
Either install it using your package manager or download the toolchain from https://developer.arm.com/open-source/gnu-toolchain/gnu-rm.
For Gentoo users, an ebuild is available in the tbm-overlay repository.
Building your own cross-compiler using a tool like crossdev can be quite tricky, and is therefore discouraged.

To build the source code in this repository, you will also need libopencm3.
Download the source code for libopencm3 and build it as follows:

git submodule init
git submodule update
make -C libopencm3

Supported targets
=================

The targets that are currently supported are:

* A simulation compatible with your host device (not up-to-date; requires an older git revision): TARGET=host make
* STM32F0 Discovery board: TARGET=stm32f0 make
* Trusted Boot Module (rev. 1): TARGET=stm32f1 make

Building
========

To build the code for the Trusted Boot Module, run:

TARGET=stm32f1 make

Flashing and Debugging
======================

In case of the STM32F0 Discovery board, simply connect the device using a USB cable. In case of the TBM, connect the device using SWD.
Then run the following as root:

TARGET=stm32f1 make openocd

To flash and run the program, issue the following command:

TARGET=stm32f1 make run