This article describes the content of OpenSTLinux distribution software release version openstlinux-6.6-yocto-scarthgap-mpu-v26.06.10, which is part of the Yocto-based OpenSTLinux ecosystem release note - v6.2.1.
1. Intended audience[edit | edit source]
The targeted audience is STM32MP1 series and STM32MP2 series customers or partners.
2. Delivery scope and purpose[edit | edit source]
The OpenSTLinux distribution is a Linux® distribution based on the OpenEmbedded build framework. It runs on the Arm® Cortex® processors, and is a fundamental part of the Yocto-based OpenSTLinux ecosystem. This delivery of OpenSTLinux distribution is part of STM32 MPU Ecosystem v6.2.1 (see the Yocto-based_OpenSTLinux_ecosystem_release_note_-_v6.2.1).
3. Licensing[edit | edit source]
This software package is licensed under a LIMITED LICENSE AGREEMENT FOR ST MATERIALS EVALUATION (LLA). Customers may not use this package except in compliance with the software license agreement (SLA).
All packages use the same source components. All components and their respective licenses are listed here.
4. Supported hardware[edit | edit source]
This software delivery is compatible with all STM32MP1 series' boards
and STM32MP2 series' boards
.
5. Release content[edit | edit source]
5.1. Main software components[edit | edit source]
- Build process
- OpenEmbedded v5.0.17 (Scarthgap) - Updated
- GCC version v13.4.0 - Updated
- Embedded software components
- Linux kernel v6.6-stm32mp-r3.1 (LTS v6.6.129) - Updated
- TF-A v2.10-stm32mp-r3.1 (LTS v2.10.24) - Updated
- U-Boot v2023.10-stm32mp-r3.1 - Updated
- OP-TEE 4.0.0-stm32mp-r3.1 - Updated
- External DT v6-stm32mp-r3.1 - Updated
- OpenOCD version v0.12.0
- Applicative components
- Weston version v13.0.1
- Wayland version 1.22.0
- GStreamer version v1.22.12
- GCnano version v6.4.21
5.2. Changes[edit | edit source]
5.2.1. OpenSTLinux layers[edit | edit source]
Changes are:
- Rebase on Yocto Release 5.0.17 (Scarthgap)
- Add new annex image building support (refer to ST_SPLIT_Partitions_detailed_information)
- Force installation of bootfs package for all images (not only ST image)
- sdk-info: ask user before overwriting action files when already available
- Add firmware update tools for M33-TD flavor

- Minor fixes
5.2.2. Linux kernel[edit | edit source]
New component release tag v6.6-stm32mp-r3.1 is available.
The main updated features are:
- Rebase on Linux® kernel v6.6.129 for OpenSTLinux v6.2.1 delivery,
- Stabilization and improvements for STM32MP1 & STM32MP2 platforms,
- STM32MP2 series DMA3 transfer "residue reporting" refinements for audio,
- USART stability improvements,
- Multimedia and display fixes,
- Networking, storage and power management fixes and improvements,
- Minor fixes.
5.2.3. U-Boot[edit | edit source]
New component release tag v2023.10-stm32mp-r3.1 is available, rebased on official U-Boot v2023.10.
Changes are:
- CLK: update clock management for STM32MP13/21/25
- Fwu-mdata:
- Fix fwu-mdata node update for NOR boot
- Allow multiple metadata storage drivers
- Add support of UUID for metadata partition
- Video: Remove polarities settings from LVDS bridge
- SPI: increase read throughput in indirect mode for QPSPI and OSPI
- Device tree alignment with kernel Linux kernel v6.6-stm32mp-r3.1 (LTS v6.6.129)
- Various fixes
5.2.4. TF-A[edit | edit source]
New component release tag v2.10-stm32mp-r3.1 is available, rebased on official TF-A v2.10.24 (LTS tag lts-v2.10.24.24).
Changes are:
- Update mbedTLS to version 3.6.5
- Add support of firmware update for M33-TD flavor

- Multiple fixes and improvements
Full changelog: lts-v2.10.24...2.10-stm32mp-r3.1
5.2.5. OP-TEE[edit | edit source]
New component release tag 4.0.0-stm32mp-r3.1 is available, rebased on official OP_TEE OS v4.0.0.
Changes are:
- OP-TEE 4.0.0-stm32mp-r3.1 release :
- Optimization PSCI OSI on STM32MP1 series
- Disable unused clock at the end of the OP-TEE boot
- Upgrade to mbedTLS 3.6.5
- Various fixes
Full Changelog: 4.0.0-stm32mp-r3...4.0.0-stm32mp-r3.1
5.2.6. External-DT[edit | edit source]
New component release tag v6-stm32mp-r3.2 is available to take into account rebase of OpenSTLinux v6.2.1.
The external device tree component is used to host STM32 MPU embedded software device tree configurations in addition to the ones present in each software component (TF-A, OP-TEE, U-Boot, Linux kernel, TF-M).
Since ecosystem release v6.2.0
, it is used for both STM32MP1 series and STM32MP2 series.
6. Release changes notification[edit | edit source]
OpenSTLinux attention points to switch from ecosystem release v6.2.0
to ecosystem release v6.2.1
are documented in STM32 MPU OpenSTLinux release changes notification – v6.2.1 article.
7. Recommendations for use[edit | edit source]
7.1. Safe use[edit | edit source]
- Flash programming and boot from all supported flash devices: SD card, eMMC, ONFI NAND and NOR flash memories.
- Develop Linux® applications, libraries, kernel modules based on OpenSTLinux delivery.
- Develop STM32CubeMPU applications based on STM32CubeMP1 and STM32CubeMP2 deliveries.
- Develop boards based on STM32MP1 series and STM32MP2 series.
- Prototype applications based on ST boards.
7.2. Nonrecommended use[edit | edit source]
- None
8. Restrictions[edit | edit source]
STM32MP1 series
- The partition layout always keeps the "firmware update" related partitions even if machine feature "fw-update" is disabled. To optimize the partition layout without "firmware update" feature, modifications are needed on flashlayout file generation, and also on U-Boot source code in case of MTD partitions (storage mapping is hardcoded for MTD partitions, see How_to_configure_U-Boot_for_your_board#MTD_partitions).
- STM32MP135F-DK
: Restriction concerning "WoL from PHY" feature (missing "/delete-property/ power-domains;" in DT node Ethernet1). Updated procedure is described in Ethernet_device_tree_configuration#How_to_enable_and_use_WoL_from_PHY chapter.
9. Yocto features enabled in the delivery[edit | edit source]
OpenEmbedded[1] build framework engine is named OE-Core.
OpenSTLinux distribution is based on the build framework OpenEmbedded, and can be configured thanks to a mechanism named "features" (machine features, distribution features, ...).
Depending on the features enabled, the resulting distribution can have more capabilities or software embedded.
For example, if the WiFi is enabled then the WiFi software and drivers are present on the filesystem and the WiFi can be used.
9.1. Machine features[edit | edit source]
The variable MACHINE_FEATURES specifies the list of hardware features the machine is capable of supporting.
These features (MACHINE_FEATURES) are defined inside the machine configuration .
9.2. Distribution features[edit | edit source]
The variable DISTRO_FEATURES specifies the list of software features present in the distribution.
These features (DISTRO_FEATURES) are defined inside the distribution configuration .
| Distribution feature | Purpose |
|---|---|
| alsa | Include ALSA support (OSS compatibility kernel modules are installed if available). |
| argp | |
| autoresize | Add support of userfs auto resize feature in OpenSTLinux |
| bluetooth | Include bluetooth support |
| bluez5 | Add bluetooth stack |
| efi | Add userland EFI tools |
| ext2 | Add second extended File system support |
| ext4 | Add fourth extended File system support |
| gobject-introspection-data | Enable GObject introspection, project for providing machine readable introspection data of the API of C libraries. |
| gplv3 | Add gplv3 binaries in OpenSTLinux |
| gstreamer | Add gstreamer tools in filesystem |
| initrd | Add ramdisk |
| ipv4 | Add ipv4 support |
| ipv6 | Add ipv6 support |
| kde | Add several tools (e.g. cups, fontconfig, ...) to the filesystem |
| largefile | Enable large file support |
| ldconfig | Include support for ldconfig and ld.so.conf on the target |
| multiarch | Enable 64 bits BFD (Binary File Descriptor) |
| nfs | Include NFS client support (for mounting NFS exports on device). |
| opencl | Include the OpenGL |
| opengl | Include the OpenCL |
| optee | Install "tee" service on the filesystem |
| pam | Enable pluggable authentication module |
| pci | Add PCI support |
| pulseaudio | Network-capable sound server program |
| splashscreen | Add U-Boot splash screen |
| systemd | Use systemd as init service |
| usbgadget | USB gadget device support (for USB networking/serial/storage) |
| usbhost | USB ost support (allows to connect external keyboard, mouse, storage, network etc) |
| vulkan | Include the Vulkan Library |
| wayland | Add Wayland support |
| wifi | WiFi support |
| xattr | Add "Extended Attributes" support for filesystem |
| zeroconf | Add "zeroconf" package to set up an ad-hoc network |
9.3. Bootscheme labels[edit | edit source]
The variable BOOTSCHEME_LABELS defines which kind of boots is supported on the board.
These settings (BOOTSCHEME_LABELS) are defined inside the machine configuration .
| Bootscheme label | Purpose |
|---|---|
| optee | Add OP-TEE (system and secure services) in boot scheme |
| opteemin | Add OP-TEE (system services only) in boot scheme |
| fastboot | Add Fastboot and OP-TEE (system and secure services) in boot scheme |
| fastboot-opteemin | Add Fastboot and OP-TEE (system services only) in boot scheme |
9.4. Bootdevice labels[edit | edit source]
The variable BOOTDEVICE_LABELS defines which kind of mass storage OpenSTLinux can program.
These settings (BOOTDEVICE_LABELS ) are defined inside the machine configuration .
10. How to get started with openstlinux-6.6-yocto-scarthgap-mpu-v26.06.10[edit | edit source]
Refer to Yocto-based_OpenSTLinux_embedded_software article.
11. Associated tools[edit | edit source]
Refer to the Development tools release notes .
12. Minor release updates[edit | edit source]
STMicroelectronics regularly delivers corrections through github® components which are U-Boot, OP-TEE, TF-A , Linux kernel .
The corrections can be incorporated into the STM32MPU Developer Package or Distribution Package (see below).
Two possibilities exist to update a Distribution Package:
- Update your existing Distribution Package:
- Switch your Distribution Package to # github® mode .
- Use the devtool modify <recipe name> command to set up an environment. It fetches and unpacks the source code.
- In the extracted source code, use a git command such as git checkout -b WORK <github® TAG> to point to a new revision of the component.
- More rarely, STMicroelectronics also delivers fixes on layers through github®. These changes can be integrated (via git commands: git checkout -b WORK <github® commit SHA1>) into the local STM32MPU Distribution Package environment. See below the github® links of the quoted layers :
- Get a new Distribution Package:
- Refer to Installing_the_OpenSTLinux_distribution page for installing instructions, and use the repo command given for the minor version below, if it exists.
13. References[edit | edit source]
14. Archives
[edit | edit source]
| STM32MPU release | OpenSTLinux release note |
|---|---|
| STM32 MPU-Ecosystem-v6.2.0 | STM32 MPU OpenSTLinux release note - v6.2.0 |
| STM32 MPU-Ecosystem-v6.1.0 | STM32 MPU OpenSTLinux release note - v6.1.0 |
| STM32 MPU-Ecosystem-v6.0.0 | STM32 MPU OpenSTLinux release note - v6.0.0 |
| STM32 MPU-Ecosystem-v5.1.0 | STM32 MPU OpenSTLinux release note - v5.1.0 page for the v5 ecosystem releases (in archived wiki) |
| STM32 MPU-Ecosystem-v5.0.0 | STM32 MPU OpenSTLinux release note - v5.0.0 page for the v5 ecosystem releases (in archived wiki) |
| STM32 MPU-Ecosystem-v4.1.0 | STM32 MPU OpenSTLinux release note - v4.1.0 page for the v4 ecosystem releases (in archived wiki) |
| STM32 MPU-Ecosystem-v4.0.0 | STM32 MPU OpenSTLinux release note - v4.0.0 page for the v4 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v3.1.0 | STM32MP15 OpenSTLinux release note - v3.1.0 page for the v3 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v3.0.0 | STM32MP15 OpenSTLinux release note - v3.0.0 page for the v3 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v2.1.0 | STM32MP15 OpenSTLinux release note - v2.1.0 page for the v2 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v2.0.0 | STM32MP15 OpenSTLinux release note - v2.0.0 page for the v2 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v1.2.0 | STM32MP15 OpenSTLinux release note - v1.2.0 page for the v1 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v1.1.0 | STM32MP15 OpenSTLinux release note - v1.1.0 page for the v1 ecosystem releases (in archived wiki) |
| STM32MP15-Ecosystem-v1.0.0 | STM32MP15 OpenSTLinux release note - v1.0.0 page for the v1 ecosystem releases (in archived wiki) |