Last edited 3 years ago

OpenSTLinux distribution

Template:ArticleMainWriter

Template:ArticleApprovedVersion


1 What is the OpenSTLinux distribution?[edit source]

The OpenSTLinux distribution, running on the Arm® Cortex®-A processor(s), is a sub-part of the STM32MPU Embedded Software distribution.

OpenSTLinux distribution.png

OpenSTLinux is a Linux® distribution based on the OpenEmbedded build framework.

It includes the following collection of software components:

As explained in the OpenEmbedded article, the files used to build an image are stored in layers that come from different sources, and that are configured for this image.
Only layers specific to the OpenSTLinux distribution (for example the OpenSTLinux Board Support Package layer) are detailed in the Layers chapter below. Community layers referenced in this article are not listed. Template:ProductMarketingReviewsComments


The Machines chapter introduces the machine metadata (the information needed to build a kernel for specific target boards), while the Images chapter specifies the images that contain the information needed to build the user space. The Distros chapter describes the available distros configurations.

2 Software architecture overview[edit source]

The figure below gives an overview of the OpenSTLinux architecture. This figure is clickable so that you can directly jump to one of the sub-levels.
Template:ProductMarketingReviewsComments

The Linux application frameworks (or Linux user space components) that rely on the OpenSTLinux BSP, mainly come from open-source communities.

OpenEmbedded core components (community layers) are thus completed with STMicroelectronics-specifc layers (for example the BSP layer). This gives a coherent basis for customers, who can then start their application developments easily, based on standard interfaces such as the Wayland display protocol. Template:ProductMarketingReviewsComments


OP-TEE overviewOP-TEE overviewTF-A overviewU-Boot overviewSTM32MP15 Linux kernel overviewBoot chain overviewOpenSTLinux BSP architecture overviewLinux application frameworks overview
OpenSTLinux architecture overview



3 OpenSTLinux concept[edit source]

To build software based on an OpenSTLinux release, you must select a combination of machine, image and distro.
Template:ProductMarketingReviewsComments Available machines, images and distros are listed below.

More information on how to compile and use an OpenSTLinux distribution can be found in the Distribution Package articles available in category:Distribution Package. It is up to you to select the one corresponding to the STM32 MPU used. Template:ProductMarketingReviewsComments

3.1 Layers[edit source]

This chapter describes the layers developed by STMicroelectonics. Template:ProductMarketingReviewsComments

STMicroelectronics' strategy is to organize the layers in order to split BSP descriptions from applications and frameworks.
By doing this, any BSP can be combined with any framework, or no framework at all.

Layer Description
meta-st-stm32mp BSP Layer for stm32mp
meta-st-openstlinux OpenSTLinux layer - framework/image settings

For the detailed content of the layers, please check STM32MP15_OpenSTLinux_release_note#Detailed delivery content

In addition, in OpenSTLinux distribution, a layer (meta-st-stm32mp-addons) has been created to manage STM32CubeMX integration.
If necessary, you can also create your own layer. The procedure to do so is explained in How_to_create_a_new_open_embedded_layer.

Layer Description
meta-st-stm32mp-addons BSP Layer addons for stm32mp (CubeMX Machine)
meta-my-custo-layer framework addons/customization

3.2 Machines[edit source]

Machine Description
stm32mp1 Machine configuration for STM32MP1 microprocessor device boards
stm32mp1-eval Machine configuration for STM32MP1 evaluation board
stm32mp1-disco Machine configuration for STM32MP1 disco board

3.3 Images[edit source]

Image Description
Official images
st-image-weston OpenSTLinux weston image with basic Wayland support (if enabled in distro)
Supported images
st-image-core OpenSTLinux core image
Proposed images as example only
st-example-image-qt ST example of image based on QT framework
st-example-image-x11 ST example of image based on X11
st-example-image-xfce ST example of image based on XFCE framework
st-example-image-gtk ST example of image based on GTK framework

3.4 Distros[edit source]

For further details on distributions (distros), read "Creating a distribution" [1]

Distro Description
openstlinux-eglfs OpenSTLinux featuring eglfs - no X11, no Wayland
openstlinux-weston OpenSTLinux featuring Weston/Wayland
openstlinux-x11 OpenSTLinux featuring X11
nodistro *** DEFAULT OPENEMBEDDED SETTING : DISTRO is not defined ***

4 How to get the software for this distribution[edit source]

The OpenSTLinux distribution is available through the three Packages (Starter, Developer, and Distribution) of the STM32MPU Embedded Software ecosystem.

5 References[edit source]