Commit Graph

252 Commits (master)

Author SHA1 Message Date
Marco Oliverio 2d6cf95c20 add support for PIC32CZ and PIC32CK 2025-06-09 16:29:31 +02:00
Brett Nicholas 7660bf66f8 Add wolfHSM cert chain verification for ECC and RSA 2025-05-27 15:42:59 -06:00
Brett Nicholas d49e507926 - Support external flash for elf scatter-loading
- Support ELF scatter-loading on TC3xx
- Modify TC3xx HAL flash erase to support arbitrary offsets and sizes
- Realign partition size and addresses to support more efficient sector mass erase on update
2025-05-08 08:50:26 -06:00
David Garske 312d955125 Add small stack. Fix to use sim for test-lib. 2025-04-29 11:50:29 +02:00
David Garske f7d1e24345 Fixed issue with hal/library.c around NO_FILESYSTEM. 2025-04-29 11:50:29 +02:00
Daniele Lacamera 50725b38d9 Added example config files for sim, sim32 + ELF sg 2025-04-07 12:19:26 +02:00
David Garske d13f3260ab Documentation cleanups. Renamed zynqmp CSU `PKA` to `HW_SHA3`. Disabled CSU PUF code, since it is only supported with eFuses (it cannot be used adhoc). 2025-03-26 09:14:57 +01:00
David Garske 851130293c Added Xilinx UltraScale+ MPSoC CSU Support CSU support.
Enabled support for offloading SHA3 hashing to CSU hardware using PKA=1.
Added support for enabling JTAG at runtime if CSU_DEBUG is set. Requires patching PMUFW to enable register access. See: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/2587197506/Zynq+UltraScale+MPSoC+JTAG+Enable+in+U-Boot
2025-03-26 09:14:57 +01:00
David Garske 2d4d897acb
Merge pull request #544 from miyazakh/fix_raspi3
Revert simple start-up for Raspi3b
2025-03-20 16:16:56 -07:00
Patrik Dahlström 7f7252470b stm32f103: add example config
Config based on the STM32F4 ditto.

Booting takes about 6 seconds and update around 15.

Signed-off-by: Patrik Dahlström <risca@dalakolonin.se>
2025-02-21 18:41:04 +01:00
Daniele Lacamera f4d1c02730 Fixed flash driver, added documentation, tested 2025-02-18 14:43:47 +01:00
Daniele Lacamera 354df34b6c Added build test. Updated mcxa + mcxw to mcux-sdk 2025-02-18 14:43:37 +01:00
Hideki Miyazaki b70987f86c
revert simple start-up
gard UART int
NO_QNX definition
2025-01-30 07:54:59 +09:00
Daniele Lacamera b6ed896086 Cleanup initialization code for rp2350.
+ TZEN=1 in config
+ Changed SRAM settings (allocated 256KB to the secure supervisor)
+ Updated documentation
+ Added FLASH_NSC area for sg stubs
2025-01-27 12:36:19 +01:00
Daniele Lacamera 359c59fa47 Added IDE/pico-sdk dir to build wolfboot+blink app 2025-01-24 13:06:36 +01:00
Daniele Lacamera 0791d76d65 Draft: support for rp2350 2025-01-24 13:06:08 +01:00
David Garske b8a23b1f81 Allow build-time adjustment of QSPI reference clock and divisor. Eliminate `ZCU102` macro (not needed). Add QSPI init message with ref clock, divisor, bus and IO mode (Poll or DMA). 2024-12-30 15:36:43 +01:00
David Garske f729e419e6 Fixes for QSPI DMA mode. For example reduces QSPI->DDR load of 154MB from 18,228ms to 2,607ms. Changed QSPI to use DMA by default (can force IO mode using `GQSPI_MODE_IO`). 2024-12-30 15:36:43 +01:00
David Garske acb9d832eb Fixes for Xilinx Zynq UltraScale+ MPSoC:
* Fixes to support wolfBoot native make and gcc-arm cross compiler. ZD 18159
* Adjust wolfBoot linker script to not use 0 base, instead use end of DDR - 1MB.
* Fixed QSPI bare-metal driver for multi-sector and read return code.
* Fixed issue with Xilinx XMSS IMAGE_HEADER_SIZE in documentation. It should be 5000 bytes.
* Performance optimizations for QSPI:
  - Allow configuration of SPI clock.
  - Improve GSPI FIFO TX/RX fill.
* Added support for FAST_MEMCPY that supports an aligned 32-bit.
* Added Flattened uImage Tree (FIT) image (FDT format).
* Added Aarch64 support for FDT fixups.
* Added Aarch64 startup to support EL2 with cache/MMU.
* Added documentation about exception levels
* Moved zynqmp registers to header.
* Fix printf uart_writenum "buf" len.
* Updated fdt-parser to support saving off larger data images.
2024-12-30 15:36:43 +01:00
Marco Oliverio 7008f68707 kontron-vx3060-s2: simplify example, add build test, improve docs 2024-12-19 20:12:16 +01:00
Marco Oliverio 834a712350 fsp: move TempRamInitExit and later APIs in stage2
To avoid using Flash memory after TempRamInitExit. This protects against
malicious modification/injection of the flash after Cache-As-RAM is
disabled.
2024-12-19 20:12:16 +01:00
Brett Nicholas 4b8e4b7907 Additional fixes for new keytool features introduced in #521 2024-12-16 19:12:23 +01:00
Brett Nicholas ceffc788dd - support for wolfHSM ML-DSA on simulator and AURIX (DMA only)
- consolidate AURIX scripts into wbaurixtool.sh
- documentation updates
2024-12-16 19:12:23 +01:00
Brett Nicholas 21a4082952
Merge pull request #521 from danielinux/build-keytools-windows
Remove compile-time dependencies from key tools
2024-12-05 16:56:42 -07:00
Daniele Lacamera c3fe5055f6 Fix check on ML_DSA pubkey size at runtime 2024-12-03 15:23:40 +01:00
David Garske 06bbed4280 Peer review feedback. 2024-12-02 19:41:26 +01:00
David Garske 2709af28c2 For Rasp3 don't try and load the .data region (already running from RAM) by setting NO_XIP. 2024-12-02 19:41:26 +01:00
David Garske d007c9af08 Initial support for NXP LS1028A. Booting into OCRAM app. Updates to ARMv8 startup. 2024-12-02 19:41:26 +01:00
Daniele Lacamera adb020470a Change header size for delta test to fit base hash 2024-11-21 15:59:57 +01:00
Brett Nicholas 78e4275f99 Initial wolfHSM support for simulator and AURIX TC3xx 2024-11-13 09:52:49 +01:00
Daniele Lacamera cc447ea879 Support for hybrid authentication (2 ciphers) 2024-10-30 13:17:06 +01:00
Daniele Lacamera 95d58244a9 SAMA5D3: Hal fixes, add DBGU, enable ARM_ASM 2024-10-14 10:14:48 +02:00
jordan b97abd4ace Add ML-DSA support. 2024-10-14 10:13:52 +02:00
Daniele Lacamera 855b968d75 Activate debug in sim_tpm tests 2024-10-11 14:49:43 +02:00
David Garske d803a20217 Switch to using IPC for communicating state. Prevents possible hard fault on network core reset. Cleanup make logic for using custom partition id (WOLFBOOT_PART_ID). On net update allow app core to continue booting if synchronization is enabled. 2024-10-11 10:29:59 +02:00
David Garske 7260ecbcbb Added tests for delta updates. Added logging for delta version errors. Added `SIGN_OPTIONS_EXTRA`. 2024-10-11 10:29:59 +02:00
David Garske f6c12839f3 Enable ECC384 and SHA384. Fix sleep_us. Add Cortex-M hard-fault handler support. 2024-10-11 10:29:59 +02:00
David Garske ab59175427 Fix for nRF5340 `uart_write` issue with memchr args, which caused occasional corrupt characters to be printed. Improve core state description in logging. Enabled network core test app GPIO work on `LED2 P0.29`. 2024-10-11 10:29:59 +02:00
David Garske 29a30a6efc Enable backup for network core, so the last known image will still be in shared ram. Fixed bug with swap offset on network core external memory map and "erase" init. 2024-10-11 10:29:59 +02:00
David Garske 8489736eac Fixed and improved erase of remainder of partition logic and logging. Added support for nRF5340 core synchronization (`NRF_SYNC_CORES`). Added test for `WOLFBOOT_FLASH_MULTI_SECTOR_ERASE`. 2024-10-11 10:29:59 +02:00
David Garske 832ac479c3 Example for using custom UART port/pin. Additional debug output on erase of unused flash sectors. 2024-10-11 10:29:59 +02:00
David Garske eb175cdfec Switch network core to use external flash HAL, but map to shared memory. Allows using update_flash logic including encrypted and delta updates. 2024-10-11 10:29:59 +02:00
David Garske f2b929affd QSPI Power control (active low). 2024-10-11 10:29:59 +02:00
David Garske 2cf70f0dbd Fix for the `set_trailer_at` with external flash to use 32-bit write using cached value (Many QSPI hardware peripherals do not support a single byte write). Fix delta build error with DISABLE_BACKUP. Added tests for updating both cores in build_flash.sh. 2024-10-11 10:29:59 +02:00
David Garske 8a9fbe5674 Improve network core firmware update. 2024-10-11 10:29:59 +02:00
David Garske 6db7de6a75 Support for the Nordic nRF5340 (application and network cores):
* Added nRF5340 driver support for Clock, Internal Flash (NVMC), GPIO, SPU, OTP, UART, SPI, QSPI and IPC.
* Added support for updating the network core (Sign using "--id 2")
* Cleanup the nRF52 port
* Improved external QSPI and internal Flash tests and logging.
* Improved internal printf support for formatter length.
2024-10-11 10:29:59 +02:00
Daniele Lacamera c80937bdea Addressed reviewer's comments 2024-10-02 10:25:36 +02:00
Daniele Lacamera 6080cc215c [SAMA5D3] Add build test, expand Target.md 2024-09-30 14:06:23 +02:00
Daniele Lacamera 294d62d0c6 [SAMA5D3] Support for DDR2 memory on -xplained 2024-09-30 14:06:23 +02:00
Daniele Lacamera 76920599b3 [SAMA5D3] Added test-app, moved to SP_ASM 2024-09-30 14:06:17 +02:00