-
Notifications
You must be signed in to change notification settings - Fork 119
ELF scatter-loading fixes and TC3xx support #569
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ELF scatter-loading fixes and TC3xx support #569
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces support for ELF scatter-loading on external flash and integrates TC3xx support into the wolfBoot bootloader, while also adding DEBUG_UART functionality and updating related documentation.
- Refactors preprocessor macros for flash scatter-loading and adjusts flash writing logic in the TC3xx HAL.
- Adds buffered flash write and erase improvements along with DEBUG_UART support, including UART initialization and transmission.
- Updates firmware update and IDE documentation to reflect new ELF loading procedures and configuration changes.
Reviewed Changes
Copilot reviewed 26 out of 42 changed files in this pull request and generated no comments.
File | Description |
---|---|
hal/sim.c | Renamed the preprocessor macro from WOLFBOOT_ELF_SCATTERED to WOLFBOOT_ELF_FLASH_SCATTER. |
hal/aurix_tc3xx.c | Enhances flash write logic with sector-based buffering and adds DEBUG_UART support functions. |
docs/firmware_update.md | Expands documentation on ELF loading, including RAM and flash approaches and dual-layer verification. |
IDE/AURIX/README.md | Updates build instructions and usage notes to support both standard and ELF file-based images. |
Files not reviewed (16)
- IDE/AURIX/test-app-wolfHSM/.cproject: Language not supported
- IDE/AURIX/test-app-wolfHSM/Lcf_Gnuc_Tricore_Tc.lsl.in: Language not supported
- IDE/AURIX/test-app/.cproject: Language not supported
- IDE/AURIX/test-app/.settings/language.settings.xml: Language not supported
- IDE/AURIX/test-app/Lcf_Gnuc_Tricore_Tc.lsl.in: Language not supported
- IDE/AURIX/wolfBoot-tc3xx-wolfHSM/.cproject: Language not supported
- IDE/AURIX/wolfBoot-tc3xx-wolfHSM/Lcf_Gnuc_Tricore_Tc.lsl: Language not supported
- IDE/AURIX/wolfBoot-tc3xx-wolfHSM/wolfBoot_macros.in: Language not supported
- IDE/AURIX/wolfBoot-tc3xx/.cproject: Language not supported
- IDE/AURIX/wolfBoot-tc3xx/.settings/language.settings.xml: Language not supported
- IDE/AURIX/wolfBoot-tc3xx/Lcf_Gnuc_Tricore_Tc.lsl: Language not supported
- IDE/AURIX/wolfBoot-tc3xx/wolfBoot_macros.in: Language not supported
- Makefile: Language not supported
- arch.mk: Language not supported
- config/examples/sim-elf-scattered.config: Language not supported
- config/examples/sim32-elf-scattered.config: Language not supported
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Refactor of the elf scattering OK, as discussed. Both the feature and the squashelf tools are well documented. Squashelf tool compiles and works fine.
Did not review the TC3xx specific code / IDE / debugging scripts
@bigbrett please rebase to latest master to resolve conflicts, then assign to @billphipps for a final review on HW-specific components. |
- 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
1c36272
to
d49e507
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Minor comments and I didn't get a chance to test it out locally. Consider some tests for squashelf?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
@dgarske this has been approved by both @danielinux and @billphipps , if you could pls do the honors... |
Major modifications to flash elf loading to properly support external flash and TC3xx.
squashelf
wbaurixtool.sh
Other:
DEBUG_UART
support for AURIX TC3xx