wolfBoot/test-app
David Garske db15f9b0f1 Further NXP P1021 fixes and improvements:
* Added ELF32 and ELF64 loader support (config `ELF=1` or build option `WOLFBOOT_ELF`).
* Add ELF support to `update_ram.c` loader.
* Add support for loading entire flash image to RAM when `EXT_FLASH=1` and `NO_XIP=1` (or `WOLFBOOT_USE_RAMBOOT`).
* Added QUICC Engine support to load microcode and enable.
* Add multiple core support for NXP P1021.
* Fixes to resolve first stage boot ROM relocation.
  - Implemented temporary workaround to resolve stack traps.
* Added PPC GOT relocation support.
* Fix for the PPC `isr_empty` handler address.
* Fix to allow stack to use DDR by having assembly setup DDR TLB. After relocating wolfBoot use stack on DDR.
* Cleanup wolfBoot output.
  - Only remove extra .bin/.elf created unless `make distclean` is used.
  - Don't output the key grep test (only check result).
  - Adjust build order (first stage, wolfboot, test app, key, sign test app and factory).
  - Fix to make sure linker script is rebuilt before objects.

Sample NXP P1021 Output:

```
Relocating BOOT ROM to DDR
Loading wolfBoot to DDR
Jumping to full wolfBoot
wolfBoot HAL Init
Flash Init: Ret 0, ID 0x76207620
QE: Length 63732, Count 1
QE: uploading 'Microcode for P1021 r1.0' version 0.0.1
QE: Traps 0
MP: Starting core 2 (spin table 0xFFFFF240)
Versions: Boot 1, Update 0
Trying Boot partition at 0x200000
Loading header 512 bytes to 0x1DFFFE00
Loading image 3170724 bytes to 0x1E000000
Image size 3170724
Firmware Valid
Loading elf at 0x1E000000
Found valid elf32 (big endian)
Booting at 0x6000
```
2023-07-05 17:03:57 +02:00
..
AARCH64.ld
ARM-psoc6.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-r5be.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-stm32f7.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-stm32h7.ld Improvements and fixes for CMake 2022-12-15 00:56:57 -07:00
ARM-stm32l5-ns.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-stm32l5.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-stm32u5-ns.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM-stm32u5.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
ARM.ld NVM_FLASH_WRITEONCE refactoring 2023-01-26 09:22:48 +01:00
CMakeLists.txt Fixed STM32H7 UART 5. Added CMake support for DEBUG_UART. Adjust example config to use correct QSPI offsets for update partition. 2023-03-06 16:25:06 +01:00
Makefile Improvements to the clock calculation code (dynamic based on ratio). Remove execute bits on files. Make stage1 PIC. Disable L1/L2 for first stage. Add PLT/GOT to .data region. 2023-05-10 15:11:09 -07:00
PPC.ld Improvements to the clock calculation code (dynamic based on ratio). Remove execute bits on files. Make stage1 PIC. Disable L1/L2 for first stage. Add PLT/GOT to .data region. 2023-05-10 15:11:09 -07:00
RISCV.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
app_hifive1.c Added renode board: sifive-hifive-fe310. 2022-02-11 10:48:47 +01:00
app_imx_rt.c first commit - test app boots on MIMXRT1064-EVK 2023-03-06 17:31:48 +01:00
app_kinetis.c Update copyright year 2021-07-19 07:50:02 -07:00
app_lpc.c Update copyright year 2021-07-19 07:50:02 -07:00
app_nrf52.c Fixed cosmetics after code reviews 2023-01-27 08:35:08 +01:00
app_nxp_p1021.c Further NXP P1021 fixes and improvements: 2023-07-05 17:03:57 +02:00
app_nxp_t2080.c Fix NXP T2080 build. 2023-05-09 09:49:51 -07:00
app_psoc6.c Update copyright year 2021-07-19 07:50:02 -07:00
app_raspi3.c Update copyright year 2021-07-19 07:50:02 -07:00
app_samr21.c Update copyright year 2021-07-19 07:50:02 -07:00
app_sim.c New simulator tests 2023-05-15 11:13:38 +02:00
app_stm32f4.c STM32 QSPI Flash support. Refactor SPI to allow different GPIO base/AF for each pin. Adds `DEBUG_UART` support for H7. 2022-12-20 13:31:28 +01:00
app_stm32f7.c Added new renode board: stm32F746 2022-02-11 10:48:47 +01:00
app_stm32g0.c Update copyright year 2021-07-19 07:50:02 -07:00
app_stm32h7.c Fix typos found by codespell 2023-07-04 07:43:02 +02:00
app_stm32l0.c Disabled builds that have requirements not supported yet. Fixed L0 build. 2022-12-28 19:15:50 +01:00
app_stm32l4.c Minor cleanups. Add the required Cube HAL to app Makefile. 2021-08-26 13:03:49 -07:00
app_stm32l5.c Fixed STM32L5 dual-bank mode 2021-11-17 11:53:57 +01:00
app_stm32u5.c Adds STM32U5 support. Thank you ST. 2022-01-24 00:07:03 -08:00
app_stm32wb.c Fixes to AES-CTR encryption after testing 2022-01-31 16:46:09 +01:00
app_ti_hercules.c
app_zynq.c Update copyright year 2021-07-19 07:50:02 -07:00
hifive1_write_page.c
imx_rt.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
imx_rt_clock_config.c first commit - test app boots on MIMXRT1064-EVK 2023-03-06 17:31:48 +01:00
led.c self-encrypt prototype; tested on stm32l0 2022-09-21 18:49:52 +02:00
led.h Update copyright year 2021-07-19 07:50:02 -07:00
sim.ld feature: simulated target 2022-07-12 10:13:10 +02:00
standalone.ld
startup_arm.c Adds STM32U5 support. Thank you ST. 2022-01-24 00:07:03 -08:00
startup_riscv.c Update copyright year 2021-07-19 07:50:02 -07:00
system.c Update copyright year 2021-07-19 07:50:02 -07:00
system.h Update copyright year 2021-07-19 07:50:02 -07:00
timer.c Update copyright year 2021-07-19 07:50:02 -07:00
timer.h Update copyright year 2021-07-19 07:50:02 -07:00
vector_riscv.S Update copyright year 2021-07-19 07:50:02 -07:00