Commit Graph

303 Commits (bf88d15ea692c596ec5376f3d6586b67cd2689ba)

Author SHA1 Message Date
David Garske 9e17315d49 Fixes for building wolfBoot with XMSS/LMS. 2024-08-14 18:06:12 +02:00
David Garske 8a7f5e5baa Refactor to eliminate PLATFORM_ -> TARGET_. Fix CI errors. 2024-08-14 18:06:12 +02:00
David Garske 3687851f75 Xilinx zynqmp documentation cleanups. Fixes for building with Eclipse wildcard .c include pains. 2024-08-14 18:06:12 +02:00
Daniele Lacamera 3ff7059dc5
Unit tests for update_flash.c (#487)
* Initial draft with two test cases

* Added more unit tests. Found OOB access.

* Fix potential OOB access with too-large update img

* NO_FORK disabled by default

* Cover more corner cases
2024-08-13 06:25:49 -07:00
David Garske f7fed89f27 Fix to make sure wolfBoot leaves IRQ's disabled. The TSIP driver will leave IRQ's on which could cause customer issues. Added new `spi_flash_chip_erase` API for the SPI flash driver. 2024-07-23 18:37:06 +02:00
Daniele Lacamera 421bd83913 Update wolfBoot version to 2.2.0 2024-07-22 16:29:12 +02:00
David Garske 094dc227de Change default wolfBoot_printf logging to use stderr. 2024-07-19 09:08:48 +02:00
David Garske 3444c47fdb * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler.
* Added initialization of the clocks and UART driver.
   - wolfBoot uses on chip high speed oscillator (HOCO) at (120MHz RX65N and 240Mhz for RX72N).
* Added RX RSPI and QSPI driver support with external SPI flash
* Improve documentation and fix spelling errors.
* Added .srec (s-record) format support
* Added RX TSIP support for ECDSA (requires https://github.com/wolfSSL/wolfssl/pull/7685).
* Allow custom implementation of `get_trailer_at`, `set_trailer_at` and `set_partition_magic` using `CUSTOM_PARTITION_TRAILER`
2024-07-17 06:08:31 +02:00
John Bland 6c3940fafc refactor final step of powerfail safe update and add
emergency fallback test
2024-07-10 16:58:23 -04:00
Daniele Lacamera 11ce50f6c1 Removed debug print, added PKCS11_SMALL, fixes 2024-07-09 10:22:43 -07:00
Daniele Lacamera 9b61f8923b Fixed update + write to the right bank 2024-07-09 10:22:42 -07:00
Daniele Lacamera 213315507c Add command line tool to generate otp.bin 2024-07-09 08:42:33 +02:00
Marco Oliverio 0f8f30d6b8
Merge pull request #457 from danielinux/otp-regressions
Fix build OTP options
2024-06-26 12:07:02 +02:00
David Garske a92c1b9ad9 STM32U5 cache support. Including cache invalidate on `nvm_select_fresh_sector`. ZD 18210 2024-06-25 18:12:47 +02:00
Daniel Pouzzner 441200f469 fix: support DEBUG=0 build
* build lib/wolfssl/wolfcrypt/src/logging.o unconditionally,
* gate debug printing in do_tpm_selftest() appropriately,
* initialize top_address in src/boot_x86_fsp.c:start() to fix -Wmaybe-uninitialized,
* and add __attribute__((used)) to static src/x86/exceptions.c:common_exception_handler() and _timer_handler() implementations to accommodate asm-only calling;
* fix parallel make: add dependency of stage1/loader_stage1.bin on wolfboot.elf.
* add -ffreestanding -static flags to avoid gcc compiler optimize strings functions

Co-authored-by: Daniel Pouzzner <douzzer@wolfssl.com>
2024-06-19 09:47:06 +02:00
Daniele Lacamera 391e8d05d8 Fix build OTP options
- ARMORED option is not needed in otp_primer
- do not attempt to compile otp_primer if the option is not declared
2024-06-18 15:00:54 +02:00
Daniele Lacamera 4dda0571c7 Fix building PKCS11 Trustzone with any auth algo 2024-05-29 15:05:56 +02:00
David Garske 971cbe0ecc
Merge pull request #449 from danielinux/stm32h7_otp
Support for OTP Flash as trust anchor for keystore
2024-05-24 16:34:29 -07:00
Daniele Lacamera 9b378d005b Reviewer requests: fix portability of "packed"
+ separate object for hal in otp-keystore-primer
2024-05-24 16:42:07 +02:00
Daniele Lacamera 75cd725c9d Fix linker warnings when building with otp 2024-05-24 16:37:25 +02:00
Marco Oliverio bf55ac1ab5 x86_efi: fixes
- do not use a custom section for the keystore as it will not be loaded in the
UEFI env
- remove and disable WOLFBOOT_LOAD_ADDRESS
- copy .rodata from .elf to .efi as the new version of gnu-efi ld scripts do
not merge .rodata into .data anymore
- fix typo in compile_efi_linux.sh
2024-05-20 17:03:16 +02:00
Daniele Lacamera 307e3b426c otp_keystore_primer: fixed provisioning + readonly 2024-05-20 10:58:43 +02:00
Daniele Lacamera 9dd8b7cf97 Renamed FLASH_OTP_ROT to FLASH_OTP_KEYSTORE 2024-05-15 10:55:47 +02:00
Daniele Lacamera 02bfe8a6a1 Added OTP support for STM32H5 2024-05-15 10:55:47 +02:00
Daniele Lacamera 572e1157bc Added "otp-keystore-primer" tool 2024-05-15 10:55:46 +02:00
Daniele Lacamera d1eabc2e31 Keystore module for OTP in FLASH 2024-05-15 10:55:46 +02:00
Daniele Lacamera 62a5b9f8fa Export hal functions for OTP read/write access 2024-05-15 10:55:46 +02:00
David Garske 0ddde6f074
Merge pull request #444 from miyazakh/renesas_rz_rsip
Add  RSIP use to Renesas RZ support
2024-05-10 11:52:12 -07:00
David Garske 027c6847e5
Merge pull request #443 from wolfSSL/x86_fsp_backport
x86 fsp backport
2024-05-09 07:46:56 -07:00
Daniele Lacamera 3ec982109c STM32H5: added support for TrustZone
- Unified TZ support for STM32L5, STM32H5, STM32U5
- Fixed/added example configuration files
- Expanded documentation
- Added new configurations to automated tests
2024-05-09 16:33:40 +02:00
Marco Oliverio a98e74fa33 fix: user_settings.h: fix typo in ECC521 defines 2024-04-29 12:50:37 +02:00
Marco Oliverio ee4747e79c pci: move pcie_retraining_link in boot_x86_fsp
the function relies a non-general delay() function, so move the function in a
more target-specific file.
2024-04-29 10:27:42 +02:00
Marco Oliverio 71a43064f6 pci: stage2: uniform parameter-less function prototype 2024-04-29 09:53:49 +02:00
Marco Oliverio 0aa886783f fsp: support stage2_get_parameters() helper 2024-04-29 09:53:49 +02:00
Marco Oliverio e96babef24 refactor: rename stage1.{h,c} in stage2_params.{h,c} 2024-04-29 09:53:49 +02:00
Marco Oliverio 7ce14a242a pci: dump pci bus, lspci format 2024-04-29 09:53:49 +02:00
Marco Oliverio 37fb0aaa2a tpm: include self test wrapper 2024-04-29 09:53:49 +02:00
Marco Oliverio 8dc8c8ca22 fsp: tgl: retraing 0.6.0 link after SiliconInit 2024-04-29 09:53:49 +02:00
Marco Oliverio 7a72bc719b ata: support master password in ata_security_erase_unit() 2024-04-29 09:53:49 +02:00
Marco Oliverio 85d6437433 ata: enable to compare against master password 2024-04-29 09:53:49 +02:00
Marco Oliverio 992bb4c13d ata: support aync ATA command operation
only one operation at the time at driver level is allowed.
2024-04-29 09:53:49 +02:00
Marco Oliverio e90ddcaadc ata: add missing prototypes 2024-04-29 09:53:49 +02:00
Marco Oliverio 2d67742be9 x86: ahci: make freeze optional in sata_unlock_disk 2024-04-29 09:53:49 +02:00
Marco Oliverio 4bbe43e222 x86: support cpu exceptions 2024-04-29 09:53:49 +02:00
Hideki Miyazaki 7725cc1a8b initial support Renesas RZ with RSIP 2024-04-26 07:28:07 +09:00
Marco Oliverio e7a626223a gpt: support partition label 2024-04-24 17:07:35 +02:00
Marco Oliverio 7247d1184b x86: sata: separate sata_unlock_disk() as a separate operation 2024-04-24 10:50:50 +02:00
Marco Oliverio 7f4db8247c user_settings: allow multiples HAVE_ECC* defines 2024-04-23 10:42:07 +02:00
David Garske a553dc9943
Merge pull request #436 from danielinux/prepare-release-2.1.0
Release 2.1.0: Updated ChangeLog and version.h
2024-04-16 11:29:03 -07:00
Daniele Lacamera 0581d9920d Updated ChangeLog and version.h 2024-04-16 19:42:54 +02:00