feat(bsp): add STM32F767ZI-Nucleo board enablement verified by ThreadX demo#13
Conversation
d37941d to
82621d0
Compare
fdesbiens
left a comment
There was a problem hiding this comment.
A good start!
Please see the comments below. In particular, we must figure out the actual license for the ST code included. We should then create a NOTICE.md file at the root of the app listing the licenses applicable to the third-party code in this sample.
You can also start working on a README.md explaining what this sample / demo does and how to build / deploy the code on the target board.
| @@ -0,0 +1,204 @@ | |||
| /* | |||
| * Copyright (c) 2026-present Eclipse ThreadX contributors | |||
There was a problem hiding this comment.
For the upcoming Q2 release, I must correct all copyright statements that add "-present" to the current year. This is a mistake I made in the Q1 release.
Please perform a search and replace and ensure that the statement in all the files you produced is:
Copyright (c) 2026 Eclipse ThreadX contributors
Of course, if files have been generated by vendor tooling, you should respect the existing notices and add our own only if you modified the file.
There was a problem hiding this comment.
Hello Mr. Frédéric, I have updated the Pull Request to address your feedback:
- I created a
NOTICE.mdfile listing the BSD 3-Clause and Apache 2.0 licenses for all third-party fetched components. - Untracked the
lib/stm32cubef7directory to ensure third-party drivers are not checked into Git history. - Added a detailed
README.mdonboarding guide at the root of the board directory. - Added the STMicroelectronics copyright lines alongside the Eclipse ThreadX contributor details in the license headers of the modified files.
- Updated the
fetch_sdkscripts to dynamically clone ST's official cmsis-core repository from GitHub to retrieve the correct, up-to-date Cortex-M7 standard headers - Added
fetch_sdk.shandbuild.shscripts compatible with Ubuntu 24.04.
The changes are ready for your review. Please let me know what you think so I can proceed with the next issues. Thank you!
…arty SDK from tracking
Pull Request Description
Overview
This pull request establishes a fully isolated, portable, and self-contained Board Support Package (BSP) for the STMicroelectronics STM32F767ZI-Nucleo-144 board under the
STMicroelectronics/STM32F767ZI-Nucleo/directory.Following a modular design strategy, all build configurations, compiler flags, and target-specific drivers are completely localized. This isolates the platform from other targets, carries zero risk of namespace or library conflicts, and keeps the root workspace clean.
To verify the integration, a 4-thread real-time kernel multitasking application is implemented and fully validated.
Key Features
Isolated CMake Compilation Toolchain:
arm-gcc-cortex-m7.cmake) with double-precision hardware Floating Point Unit (FPU) optimizations.FindCMSIS.cmake,FindSTM32HAL.cmake) linking the official, lightweight ST peripheral drivers.scripts/build.ps1) supporting parallel jobs.Boot & Memory Configuration:
STM32F767ZITx_FLASH.ld) defining boundary zones for Flash (2MB) and SRAM (320KB).tx_initialize_low_level.S) mapping the ThreadX RTOS kernel to run at a system clock frequency of216 MHz.startup_stm32f767xx.s) and clock configs.Peripheral Driver Adaptations:
PD8/PD9) to redirect standard Cprintfoutputs directly to the ST-LINK Virtual COM port.4-Thread Verification RTOS Demo:
2 Hzto verify core RTOS scheduler clock ticks.PC13) with debouncing and triggers the Blue LED (LD2).