The Buildroot-based Linux® embedded software is part of the STM32 MPU embedded software offer.
It is a set of software (see architecture overview), system build and development tools created to ease the development to be done on top of STM32 MPU devices.
It is made up of:
- an open-source Linux® distribution, based on the Buildroot build system, running on the Arm® Cortex®-A processor(s),
- firmwares, running on the Arm® Cortex®-M processor: FwST-M Packages (only for STM32MP15x lines
and STM32MP2 series)
Buildroot[1] is a set of recipes and scripts that specify from where to download the source code of the different software components, and that allow to configure them, build them and finally install them.
The Linux® distribution relies on the OpenSTLinux board support package (U-Boot, TF-A, OP-TEE, Linux kernel) complemented with a user-space with with a features set.
The partner's repository[2] is a Buildroot br2-external tree[3] dedicated to supporting the STMicroelectronics STM32MPU platforms. Several examples of Buildroot configurations [4] are provided:
- the minimal configuration builds the TF-A firmware, U-Boot bootloader, Linux kernel and a minimal user-space composed of just Busybox,
- while a more feature-ful configuration adds support for OpenGL and Qt5 for graphics, for OP-TEE as a Trusted Execution Environment, and also shows how Device Tree files generated by STM32CubeMX can be integrated in a Buildroot configuration.
The Buildroot-based Linux embedded software offers three development packages that let developers select the support that best meets their needs:
- the starter package to quickly and easily start with the boards. It delivers a software image (binary), ready to flash on an SD card, that includes pre-built examples (a.k.a. firmware) of the package(s) running on the Arm® Cortex®-M coprocessor.
- the developer package to add your own developments on top of the Buildroot-based Linux embedded software. It delivers:
- the components of the board support package (BSP) in source code (e.g., Linux® kernel), and the software development kit (SDK), based on Buildroot SDK, for BSPs updates or cross-architecture applications development on an host PC,
- the components of the software packages running on the Arm® Cortex®-M coprocessor in source code (e.g., STM32Cube MPU Package HAL), and the STM32CubeIDE as integrated development environment (IDE).
- the distribution package to create your own Buildroot-based Linux® embedded software, as well as your own starter and developer packages. It delivers the source code of all the software components of the Buildroot-based Linux® embedded software, and uses the Buildroot as the underlying building and distribution generation framework.
STM32 supported device | Boards | Starter Package | Developer Package | Distribution Package |
---|---|---|---|---|
STM32MP13x lines ![]() |
STM32MP13 Discovery kits | STM32MPU Starter Package | STM32MPU Developer Package | Latest Buildroot tag: openstlinux-6.6-buildroot-2024.02.9-mpu-v24.11.06 |
STM32MP15x lines ![]() |
STM32MP15 Discovery kits | |||
STM32MP25x lines ![]() |
STM32MP25 Evaluation boards |
1. References[edit | edit source]
Pages in category "Buildroot-based Linux embedded software"
This category contains only the following page.