Commit Graph

1393 Commits (master)

Author SHA1 Message Date
David Garske 767ef3de3c Add compressed firmware updates installed into an execute-in-place slot 2026-11-04 14:35:53 +01:00
David Garske 9ed2fc120b ci: build against the latest MCUXpresso SDK release instead of the manifests' default branch 2026-11-02 14:26:49 -08:00
David Garske 80a186f5c5
Merge pull request #953 from bigbrett/tc3-port-tweaks
Monolithic self-update version check + TC3xx/wolfHSM changes
2026-10-30 10:47:03 -07:00
David Garske a8542bd860 hybrid: fix LMS/XMSS keystore import and PQ secondary builds 2026-10-29 07:01:01 +01:00
Mattia Moffa 24776f3b7a
Merge pull request #949 from dgarske/psoc_e8
Add wolfBoot target for Infineon PSOC Edge E8
2026-10-28 23:02:17 +01:00
David Garske eca987ba9d
Merge pull request #952 from danielinux/signer-claimed-role-fix
boot: bind image partition claim to the booting core
2026-10-28 14:35:37 -07:00
Brett Nicholas 3c56b4bac0 Make wolfHSM cert chain name constraints optional, updates to support new wolfHSM keygen macro protection, further reducing codesize 2026-10-28 14:25:29 -07:00
David Garske 3681ea8996 Add wolfBoot target for Infineon PSOC Edge E8 2026-10-28 14:24:42 -07:00
twcook86 aa9685b03a
Merge pull request #950 from aidangarske/lpc55s69-port-update
Harden LPC55S69 TrustZone isolation and add tests, CI and docs
2026-10-28 15:12:27 -04:00
Daniele Lacamera f462765545 unit-tests: stub part check in update-disk-failover 2026-10-28 14:48:44 +01:00
Daniele Lacamera 874a58e0b9 test-size-all: re-measure footprint limits 2026-10-28 14:40:59 +01:00
Daniele Lacamera ea9c4c3120 unit-tests: stub part check in update-disk-fs, test disk partition mismatch 2026-10-28 14:37:09 +01:00
Daniele Lacamera c51b353521 boot: bind image partition claim to the booting core
Add wolfBoot_image_part_matches(), which requires the image's claimed
partition id to match HDR_IMG_TYPE_APP.
2026-10-28 14:37:09 +01:00
Daniele Lacamera 97a87d3655 Custom trailer: record the rollback direction in the UPDATE state 2026-10-28 14:35:31 +01:00
Daniele Lacamera 1b9cb03aba Make the custom-trailer final step power-fail safe 2026-10-28 14:35:31 +01:00
Daniele Lacamera 2555311331 CI: Renode test of the custom partition trailer on the Black Pill 2026-10-28 14:35:31 +01:00
Daniele Lacamera 76a8b2b3ea Refuse partitions too small for the trailer, add STM32F4 custom trailer (#937) 2026-10-28 14:35:31 +01:00
David Garske 5d02ce6811 lpc55s69: repair ECC-corrupt pages at boot, lock bus masters non-secure under TZ, set MSPLIM 2026-10-27 17:17:02 -07:00
Aidan Garske 3345f87fba Harden LPC55S69 TrustZone isolation and add tests, CI and docs 2026-10-27 16:15:37 -07:00
David Garske d5dd2b3cce PolarFire SoC: pin mpfs_bootmode2.sh to the Embedded FP6 programmer 2026-10-27 16:06:05 -07:00
David Garske 3b5bc1f064 PolarFire SoC: skip a watchdog refresh inside the forbidden window 2026-10-27 16:06:05 -07:00
David Garske b4e2436040 PolarFire SoC: boot mode 2 User Boot Loader stub verifying the eNVM wolfBoot 2026-10-27 16:06:05 -07:00
David Garske e10b343500 PolarFire SoC: SBI vendor extension for the OS: PUF keys, System Controller services and flash access 2026-10-27 16:06:05 -07:00
David Garske 4f0948e11d PolarFire SoC: a FIT ramdisk that must load, and failover actions before the golden boot 2026-10-27 16:06:05 -07:00
David Garske a91c824e45 PolarFire SoC: sNVM/PUF key storage and disk image encryption 2026-10-27 16:06:04 -07:00
Brett Nicholas 3d484f46b5 split monolithic test into its own rule 2026-10-27 09:40:22 -07:00
Brett Nicholas 49313ec8da self-update: check self-header version in monolithic mode 2026-10-27 09:09:21 -07:00
Brett Nicholas 213d7d75ce bounds-check journal sector flags, test ECC self-update, fix doc typos 2026-10-27 16:46:40 +01:00
Brett Nicholas 8e705ae048 dont erase journal if marker write fails 2026-10-27 16:46:40 +01:00
Brett Nicholas 258c640459 Add journal marker sector to better detect cut erase 2026-10-27 16:46:40 +01:00
Brett Nicholas 9bf14d722a rename for clarity 2026-10-27 16:46:40 +01:00
Brett Nicholas 1f6d07227d add ELF_FLASH_SCATTER_PRESERVE_SECTORS and associated tests 2026-10-27 16:46:40 +01:00
Brett Nicholas 41fbe4b326 Improve support for ECC flash parts:
- Add NVM ECC mode, which introduces a new erase check HAL API to use
   flash controller HW to blank check sectors instead of reading them
   and comparing to an erased byte (which typically triggers an ECC
   fault)
 - Add NVM Journal mode as an alternative to NVM_FLASH_WRITE_ONCE that
   does not require a sector-size RAM buffer and dramatically reduces
   the number of erases and programs required to set individual flags,
   while also being much more robust to power-cuts.
2026-10-27 16:46:40 +01:00
David Garske 2ab656528a zynqmp: report the PUF control fuses and correct the regeneration API 2026-10-26 19:59:53 +01:00
Aidan Garske 051a2a47ac
Merge pull request #787 from twcook86/lpc55s69_hwpuf
Support for PUF in LPC55S69
2026-10-26 08:28:51 -07:00
Marco Oliverio b240ee7aaa
Merge pull request #933 from dgarske/nai_68int6
Add wolfBoot target for the NAI 68INT6 (Intel Tiger Lake UP3) OpenVPX SBC
2026-10-26 10:04:12 +01:00
Zackery 8685a5a28c
Merge pull request #946 from dgarske/pl011_uart_rx
Add a non-blocking uart_rx() to the PL011 consoles
2026-10-23 15:55:28 -06:00
David Garske d490e36d2e fdt: boot a FIT with no kernel load/entry and no device tree 2026-10-23 11:49:49 -07:00
David Garske 8d34051e6e uart: add a non-blocking uart_rx() to the PL011 consoles 2026-10-23 11:48:36 -07:00
Thomas Cook 38d7655080 address pr comments 2026-10-22 17:36:22 -04:00
David Garske aef57a113d versal: support the system watchdog timer (WWDT) 2026-10-22 18:11:12 +02:00
David Garske 08f20f8364 sdhci: clear BWR before refilling the PIO write buffer 2026-10-22 18:09:49 +02:00
David Garske 43655708c3 zynqmp: add the eFuse programming gate and a report-only write transport 2026-10-22 18:05:42 +02:00
David Garske 942f3b938c zynqmp: add BBRAM AES key programming and an eFuse security state accessor 2026-10-22 18:05:42 +02:00
Brett Nicholas 425c742834 wolfHSM submodule update + updates for new non-global NVM 2026-10-21 13:21:40 -06:00
Mattia Moffa bd3b0c8101 keytools: allow linking against an installed wolfSSL
Until now, the keytools could only build against the lib/wolfssl
submodule. This allows building them using an installed wolfssl.

The changes are mostly just in the build system, but sign.c has some
changes to avoid using mp_* functions, which are not usually exported in
the wolfssl shared object. Instead of doing that, we now sign to DER and
split into r/s.
2026-10-20 16:01:23 +02:00
Daniele Lacamera 68a55492d3 raise footprint limits: ML_DSA (+40B, wolfSSL bump to bc9c07902 ML-DSA small-mem fixes) 2026-10-20 10:36:27 +02:00
Daniele Lacamera 154bb2f051 CI: fix lpc55s69 HWPUF jobs (Copilot review)
- hwpuf config job: pass HWPUF=1 so the PUF driver/port compile
- m33mu job: set up MCUXpresso SDK (west manifest) + CMSIS_5 for lpc55s69
- provisioning: replace ?=0 instead of appending; disable UID fallback;
  require the success-only 'attest: token size' message
- config.mk: register HWPUF + WOLFBOOT_HWPUF_PROVISION so make config
  preserves them
2026-10-20 10:36:27 +02:00
Brett Nicholas 0a3b0f7184 Add version check in SWAP copy of sector 0 to prevent rollbacks 2026-10-16 21:40:42 +02:00
Brett Nicholas ca368576ca Increase sizes in footprint test 2026-10-16 21:40:42 +02:00