- New config flags for flash geometry
- New script to automatically set option bytes
- End of stack address fix for the STM32U5 test app
- STM32U5 support for NUCLEO-U575ZI-Q (previously only supported
discovery board)
Cleanup STM32H5 HAL port.
Refactor `__ARM_FEATURE_CMSE` to `TZ_SECURE()`
Refactor attribute cmse_nonsecure_entry to use new macro `CSME_NSE_API`
Added TPM Non Secure Callable API's
Added TPM support to STM32H5 test application
This commit improves the robustness and protocol compliance of the SPI flash
driver by resolving critical bugs and standardizing command sequences.
Key Changes:
1. **Write Verification Bug (spi_flash_write_sb):**
* Replaced the complex bitwise verification logic with a direct comparison
(`verify == buf[j]`) for robust data validation.
2. **Protocol Violations & Performance:**
* **spi_flash_probe:** Fixed silent protocol failure by adding mandatory
`WREN` before `WRSR` and adding explicit `wait_busy()` and `WRDI`.
* **spi_flash_write_page:** Removed redundant `wait_busy()` after `WREN`
to improve performance.
* **Erase Functions:** Standardized erase flow by ensuring an explicit
`wait_busy()` is performed after `WREN` before issuing the command.
These changes prevent silent failures, potential flash corruption, and
unnecessary latency.
Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
- Add filesystem access implementation in HAL (`hal/filesystem.c`)
- Introduce new library_fs target and build rules for filesystem-backed partition management
- Provide example configuration for library_fs
- Add CLI application (`hal/library_fs.c`) to query and manage partitions
- Update documentation with usage instructions and build steps for the new CLI tool
- Update .gitignore
- Make the update and swap partitions secure and inaccessible from the
app except via NSC API
- Add a couple of necessary new NSC functions
- Update the app to only use NSC API
- Fix hal_flash_erase to account for secure addresses
- Fix some bugs in xmodem implementation