Last edited 4 days ago

STM32 MPU OpenSTLinux release note - v6.1.0

Applicable for STM32MP13x lines, STM32MP15x lines, STM32MP21x lines, STM32MP23x lines, STM32MP25x lines

This article describes the content of OpenSTLinux distribution software release version ecosystem release v6.1.0 More info.png , which is part of the STM32 MPU ecosystem release note - v6.1.0.

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 STM32MPU Embedded Software distribution. This delivery of OpenSTLinux distribution is part of STM32 MPU Ecosystem v6.1.0 (see the STM32 MPU ecosystem release note - v6.1.0).

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 the following boards:

STM32MP13 boards
Boards PCBs list Main features Ordering
STM32MP135x-DK.png
STM32MP135F-DK Discovery kit
  • MB1635 (motherboard)
  • MB1897 (camera module board)
  • STM32MP135FAF7[1] Rev.Y
    • Arm®-based Cortex®-A7 1 GHz
    • Secure boot and cryptography
    • 4-Gbit DDR3L, 16 bits, 533 MHz
  • ST PMIC STPMIC1D
  • 4.3" TFT 480x272 pixels with LED backlight, and capacitive touch panel
  • 2-megapixel dual lane CSI-2 camera module with 15-pin FFC connector
  • Wi-Fi® 802.11b/g/n
  • Bluetooth® Low Energy 4.1

Discovery kit with STM32MP135F MPU


STM32MP15 boards
Boards PCBs list Main features Ordering
STM32MP157D-DK1.jpg
STM32MP157D-DK1 Discovery kit
  • MB1272C (motherboard)
  • STM32MP157DAC1[2] Rev.Z
    • Arm®-based dual Cortex®-A7 800 MHz
    • Basic security
    • 4-Gbit DDR3L, 16 bits, 533 MHz
  • ST PMIC STPMIC1A cut2.0

Discovery kit with STM32MP157D MPU

STM32MP157F-DK2.jpg
STM32MP157F-DK2 Discovery kit
  • MB1272C (motherboard)
  • MB1407B (daughterboard DSI display)
  • STM32MP157FAC1[2] Rev.Z
    • Arm®-based dual Cortex®-A7 800 MHz
    • Secure boot and cryptography
    • 4-Gbit DDR3L, 16 bits, 533 MHz
  • ST PMIC STPMIC1A cut2.0
  • 4" TFT 480×800 pixels with LED backlight, and capacitive touch panel
  • Wi-Fi® 802.11b/g/n
  • Bluetooth® Low Energy 4.1

Discovery kit with STM32MP157F MPU

STM32MP157D or F-EV1.jpg
STM32MP157D-EV1 Evaluation board
  • MB1262C (motherboard)
  • MB1263C (daughterboard)
  • MB1230C (daughterboard DSI display)
  • MB1379A (camera)
  • STM32MP157DAA1[2] Rev.Z
    • Arm®-based dual Cortex®-A7 800 MHz
    • Basic security
    • 2 × 4-Gbit DDR3L, 16 bits, 533 MHz
  • PMIC STPMIC1A cut2.0
  • 5.5" TFT 720×1280 pixels with LED backlight, and capacitive touch panel
  • 5-megapixel, 8-bit camera

Evaluation board with STM32MP157D MPU

STM32MP157D or F-EV1.jpg
STM32MP157F-EV1 Evaluation board
  • MB1262C (motherboard)
  • MB1263C (daughterboard)
  • MB1230C (daughterboard DSI display)
  • MB1379A (camera)
  • STM32MP157FAA1[2] Rev.Z
    • Arm®-based dual Cortex®-A7 800 MHz
    • Secure boot and cryptography
    • 2 × 4-Gbit DDR3L, 16 bits, 533 MHz
  • PMIC STPMIC1A cut2.0
  • 5.5" TFT 720×1280 pixels with LED backlight, and capacitive touch panel
  • 5-megapixel, 8-bit camera

Evaluation board with STM32MP157F MPU

STM32MP157A-DK1.jpg
STM32MP157A-DK1 Discovery kit
  • MB1272C (motherboard)
  • STM32MP157AAC3[2] Rev.B
    • Arm®-based dual Cortex®-A7 650 MHz
    • Basic security
    • 4-Gbit DDR3L, 16 bits, 533 MHz
  • ST PMIC STPMIC1A cut1.2

Out of production

STM32MP157C-DK2.jpg
STM32MP157C-DK2 Discovery kit
  • MB1272C (motherboard)
  • MB1407B (daughterboard DSI display)
  • STM32MP157CAC3[2] Rev.B
    • Arm®-based dual Cortex®-A7 650 MHz
    • Secure boot and cryptography
    • 4-Gbit DDR3L, 16 bits, 533 MHz
  • ST PMIC STPMIC1A cut1.2
  • 4" TFT 480×800 pixels with LED backlight, and capacitive touch panel
  • Wi-Fi® 802.11b/g/n
  • Bluetooth® Low Energy 4.1

Out of production

STM32MP157A or C-EV1.jpg
STM32MP157A-EV1 Evaluation board
  • MB1262C (motherboard)
  • MB1263C (daughterboard)
  • MB1230C (daughterboard DSI display)
  • MB1379A (camera)
  • STM32MP157AAA3[2] Rev.B
    • Arm®-based dual Cortex®-A7 650 MHz
    • Basic security
    • 2 × 4-Gbit DDR3L, 16 bits, 533 MHz
  • PMIC STPMIC1A cut1.2
  • 5.5" TFT 720×1280 pixels with LED backlight, and capacitive touch panel
  • 5-megapixel, 8-bit camera

Out of production

STM32MP157A or C-EV1.jpg
STM32MP157C-EV1 Evaluation board
  • MB1262C (motherboard)
  • MB1263C (daughterboard)
  • MB1230C (daughterboard DSI display)
  • MB1379A (camera)
  • STM32MP157CAA3[2] Rev.B
    • Arm®-based dual Cortex®-A7 650 MHz
    • Secure boot and cryptography
    • 2 × 4-Gbit DDR3L, 16 bits, 533 MHz
  • PMIC STPMIC1A cut1.2
  • 5.5" TFT 720×1280 pixels with LED backlight, and capacitive touch panel
  • 5-megapixel, 8-bit camera

Out of production


STM32MP21 boards
Boards PCBs list Main features Ordering
STM32MP215F-DK.jpg
STM32MP215-DK Discovery kit
  • MB2059 (main board)
  • STM32MP215FAN3[3] Rev.Z
    • Arm®-based Cortex®-A35 1500 MHz
    • Secure boot and cryptography
    • 16-Gbit LPDDR4, 16 bits, 800 MHz
  • PMIC STPMIC2L Cut1.1
  • Optional expansion boards
    • 5-megapixel image sensor raw Bayer B-CAMS-IMX board
    • Standalone Display available at distribution with Module P/N: RK043FN78H-CT661C
Warning DB.png Important
This board is not yet available. It is based on the STM32MP21 microprocessor, that is in preproduction stage, with engineering samples only available for early adopters: thanks to contact your local sales if you want to be part of this Alpha program


STM32MP23 boards
Warning DB.png Important
To help you get started with the evaluation of the STM32MP23x product lines, you can rely on the STM32MP257F-DK Discovery kit, and the applicable STM32 MPU embedded software, running with the STM32MP23 software configuration (peripherals, features, and performance).
STM32MP25 boards
Boards PCBs list Main features Ordering
STM32MP257F-EV1.jpg
STM32MP257F-EV1 Evaluation board
  • MB1936 (main board)
  • STM32MP257FAI3[4] Rev.Y
    • Arm®-based dual Cortex®-A35 1500 MHz
    • Secure boot and cryptography
    • 2 x 16-Gbit DDR4, 32 bits, 1200 MHz
  • PMIC STPMIC25 Cut1.1
  • Optional expansion boards
    • LVDS WSVGA display B-LVDS7-WSVGA board
    • 5-megapixel image sensor raw Bayer B-CAMS-IMX board
    • DSI to HDMI adapter Full HD 30fps B-LCDAD-HDMI1 board

Evaluation board with STM32MP257F MPU

STM32MP257F-DK.png
STM32MP257F-DK Discovery kit
  • MB1605 (main board)
  • STM32MP257FAK3[4] Rev.Y
    • Arm®-based dual Cortex®-A35 1500 MHz
    • Secure boot and cryptography
    • 32-Gbit LPDDR4, 32 bits, 1200 MHz
  • PMIC STPMIC25 Cut1.1
  • Optional expansion boards
    • LVDS WSVGA display B-LVDS7-WSVGA board
    • 5-megapixel image sensor raw Bayer B-CAMS-IMX board

Discovery kit with STM32MP257F MPU


5. Release content[edit | edit source]

5.1. Main software components[edit | edit source]

  • Build process
    • OpenEmbedded v5.0.8 (Scarthgap) - Updated
    • GCC version v13.3.0
  • Embedded software components
    • Linux kernel v6.6-stm32mp-r2 (v6.6.78) - Updated
    • TF-A v2.10-stm32mp-r2 - Updated
    • U-Boot v2023.10-stm32mp-r2 - Updated
    • OP-TEE v4.0.0-stm32mp-r2 - Updated
    • External DT v6-stm32mp-r2 - 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 - Updated

5.2. Changes[edit | edit source]

5.2.1. OpenSTLinux layers[edit | edit source]

Changes are:‎

  • Rebase on Yocto Release 5.0.8 (Scarthgap)
  • Add support of STM32MP21x lines More info.png
    • New machine stm32mp21-disco (applicable on STM32MP215F-DK Discovery kit Info.png)
  • Add support of M33-TD flavor More info green.png
    • New machine stm32mp2-m33td (applicable on STM32MP215F-DK Discovery kit Info.png and STM32MP257F-EV1 Evaluation board More info green.png)
    • Supported storage:
      • nor-sdcard (CM33 boots on nor, execute CA35 boots on sdcard and opestlinux is started from sdcard)
      • nor-emmc (CM33 boots on nor, execute CA35 boots on emmc and openstlinux is started from emmc)
      • sdcard (CM33 boots on sdcard, execute CA35 boots on sdcard and openstlinux is started from sdcard)
      • emmc (CM33 boots on emmc, execute CA35 boots on emmc and openstlinux is started from emmc)
      • nor-nor-sdcard (CM33 boots on nor, execute CA35 boots on nor and openstlinux is started from sdcard)
  • Others:
    • SDK: support of an aggregated developer package (one developer package for stm32mp1, stm32mp2, stm32mp2-m33td)
    • M33 coprocessor: support of signed/encrypted firmware verified at runtime by OTP key
    • M33 firmware: split of recipe to support m33 coprocessor mode or boot processor mode (m33project-stm32mp2 vs m33tdproject-starter-stm32mp2)
    • Usage of linux-firmware-addons-bcm43xx for support of wifi/bt on ST Board
    • STM32MP215F-DK Discovery kit Info.png: wifi/bluetoth is on M2 connector and managed at runtime via device tree overlay (via menu on U-BOOT)
  • Minor fixes

5.2.2. Linux kernel[edit | edit source]

New component release tag v6.6-stm32mp-r2 is available.

The main features updated are:

  • Rebased on Linux® kernel v6.6.78 for OpenSTLinux v6.1.0 delivery
  • Add STM32MP21x lines More info.png support
  • Add support of STM32MP215F-DK Discovery kit Info.png
  • Add AARCH32 mode support for STM32MP2 series
  • Stabilization and optimization of STM32MP1 & STM32MP2 platforms
  • Improvements for real-time, power management, performance
  • Multimedia enhancements
  • Minor fixes

5.2.3. U-Boot[edit | edit source]

New component release tag v2023.10-stm32mp-r2 is available, rebased on official U-Boot v2023.10.

Changes are:

  • Add STM32MP21x lines More info.png support support
  • Add Add support of STM32MP215F-DK Discovery kit Info.png
  • Add AARCH32 mode support for STM32MP2 series
  • Add PWM support with timer for STM32MP2 series
  • Add STM32 USB2-FEMTO PHY support
  • Add multi-function timer driver support for STM32MP2 series
  • Add support of ADAC-PKH, RPROC-FW-KEY and ADAC-PKH for cmd_stm32key
  • Add BSEC driver support for STM32MP2 series
  • Fix large image programming issue
  • Various fixes

5.2.4. TF-A[edit | edit source]

New component release tag v2.10-stm32mp-r2 is available, rebased on official TF-A v2.10 (LTS tag lts-v2.10.15).

Changes are:

  • Rebase on LTS-v2.10.13
  • Add support of STPMIC1L and STPMIC2L
  • BL33 now boot on EL2 by default
  • add support of HDPL for STM32MP21x lines More info.png
  • Multiples fix and improvement

Full changelog: lts-v2.10.13...2.10-stm32mp-r2

5.2.5. OP-TEE[edit | edit source]

New component release tag 4.0.0-stm32mp-r2 is available, rebased on official OP_TEE OS 4.0.0.

Changes are:

  • STM32MP release 4.0.0-stm32mp-r2 :
    • Add STM32MP21 SoCs support
    • Add STM32MP21 DK board
    • Add support of RPROC firmware decryption
    • Update EXTI to use interrupt framework
    • Rework counter framework
    • Other minor updates

Full Changelog: 4.0.0-stm32mp-r1.2...4.0.0-stm32mp-r2

5.2.6. External-DT[edit | edit source]

New component release tag v6-stm32mp-r2 is available to take into account rebase of OpenSTLinux V6.1.0.

The external device tree component is used to host STM32 MPU embedded software device tree configurations in addition of the ones present in each software component (TF-A, OP-TEE, U-BOOT, LINUX, TF-M).

Since this ecosystem release v6.1.0 More info.png , it is used for both STM32MP1 series and STM32MP2 series.

6. Release change notification[edit | edit source]

OpenSTLinux attention points to switch from ecosystem release v6.0.0 More info.png to ecosystem release v6.1.0 More info.png are documented in STM32 MPU OpenSTLinux release changes notification – v6.1.0 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 coprocessor Cube applications based on STM32CubeMP1 and STM32CubeMP2 deliveries.
  • Develop boards based on STM32MP1 series and STM32MP2 series.
  • Prototype applications based on ST boards.

7.2. Non-recommended 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)

9. 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 theSTM32MPU 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 .
  1. Use the devtool modify <recipe name> command to set up an environment. It fetches and unpacks the source code.
  2. 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.

10. How to get started with openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11[edit | edit source]

Refer to How to download the software and start with this release?

11. Associated tools[edit | edit source]

Refer to the Referenced tools release notes .

12. Yocto features enabled in the delivery[edit | edit source]

OpenEmbedded[5] 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.

12.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 .

Machine feature Purpose
alsa Include ALSA support (OSS compatibility kernel modules installed if available).
autoresize Add support of autoresize through InitRD
bluetooth Add Bluetooth firmware to the filesystem
Broadcom43430 for (STM32MP135x-DK Discovery kit More info green.png and STM32MP157x-DKx Discovery kit More info green.png

Broadcom43439 for (STM32MP257F-DK Discovery kit More info green.png for STM32MP23x lines evaluation Info.png and STM32MP257F-DK Discovery kit More info green.png)
Broadcom4373 for (STM32MP215F-DK Discovery kit Info.png via optional M.2 Type 2AE Wi-Fi® + Bluetooth® Module)

ext2 Add Second Extended File System support
fip Enable Firmware In Package (FIP) packaging format
fw-update Enable Firmware update feature
gpu Add GPU support (if EULA is accepted) (STM32MP157 line More info.png and STM32MP2 series only)
initrd Enable Intial ramdisk building
m4copro Add m4projects to userfs (STM32MP15x lines More info.png only)
m33copro Add m33projects to userfs (STM32MP2 series only)
m33td Enable M33-TD flavor More info green.png (STM32MP2 series only) (deactivates m33copro)
opencl Add OpenCL for GPU support (if EULA is accepted) (STM32MP2 series only)
openvx Add OpenVX for GPU support (if EULA is accepted) (STM32MP2 series only)
optee Add OP-TEE Secure part
pci Add Peripheral Component Interconnect peripheral support
rtc Add Real Time Clock peripheral support
screen Add display screen peripheral support
splashscreen Add splashscreen to U-Boot
tpm2 Add Trusted Platform Module peripheral support
usbg0 Add G0 Firmware for USB support
usbgadget Enable USB Gadget feature
usbhost Enable USB Host feature
vulkan Add Vulkan for GPU support (if EULA is accepted) STM32MP2 series only)
watchdog Add watchdog support and binaries
wifi Add wifi firmware to the filesystem
Broadcom43430 for (STM32MP135x-DK Discovery kit More info green.png and STM32MP157x-DKx Discovery kit More info green.png)

Broadcom4373 for (STM32MP215F-DK Discovery kit Info.png via optional M.2 Type 2AE Wi-Fi® + Bluetooth® Module)

12.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 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 Open Graphics Library
opengl Include the OpenCL Library
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 splashscreen
systemd Use systemd as init service
usbgadget USB Gadget Device support (for USB networking/serial/storage)
usbhost USB Host 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 a ad-hoc network

12.3. Bootscheme labels[edit | edit source]

The variable BOOTSCHEME_LABELS defines which kind of boot 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

12.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 .

Bootdevice label Purpose
emmc Add boot on eMMC device
nand-4-256-1024 Add boot on NAND device
nand-4-256-1024-sdcard Add boot stage on NAND device and the filesystem on SD card
nor-emmc Add boot stage on NOR device and the filesystem on eMMC device
nor-sdcard Add boot stage on NOR device and the filesystem on SD card
nor-nor-sdcard M33-TD flavor More info green.png only: Add boot stages on NOR device (CM33, then CA35) and the filesystem on SD card
sdcard Add boot on SD card