STM32MP15 OpenSTLinux release note - v1.0.0

This article describes the content of OpenSTLinux distribution software release version openstlinux-4.19-thud-mp1-19-02-20, which is part of STM32MP15 ecosystem release note - v1.0.0.

1 Intended audience[edit]

The targeted audience is STM32MP15 customers or partners.

2 Delivery scope and purpose[edit]

The OpenSTLinux distribution is a Linux® distribution based on the OpenEmbedded build Framework. It runs on the Arm® Cortex®-A7 processors, and is a fundamental part of the STM32MPU Embedded Software distribution.

This delivery of OpenSTLinux distribution is part of STM32MP15-Ecosystem-v1.0.0 (see the STM32MP15 ecosystem release note - v1.0.0).

3 Licensing[edit]

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 of the packages use the same source components. All components and their respective licenses are listed here.

4 Supported hardware[edit]

This software delivery is compatible with the following boards:

5 Delivered features[edit]

5.1 Main software components[edit]

  • Kernel version LTS v4.19.9
  • TF-A version v2.0
  • U-Boot version v2018.11-stm32mp-r2
  • OP-TEE version v3.3.0
  • STM32CubeMP1 FW v1.0.0
  • OpenEmbedded Thud (v2.6)
  • Weston version v5.0.0
  • GStreamer version v1.14.2
  • GCC version v8.2
  • openOCD version v0.10.0
  • GCnano version v6.2.4

5.2 Detailed features[edit]

5.2.1 Kernel part[edit]

v4.19-stm32mp-r1 = Linux Kernel LTS v4.19.9 delivery for STMP32MP15x support
For build details see README.HOW_TO.txt.

  • stm32mp157c-ev1
  • stm32mp157c-ed1
  • stm32mp157a-dk1
  • stm32mp157c-dk2
  • Adds/Supports drivers in kernel
Cortex® -A7 Features Internal peripheral Linux framework Available
ADC ADC iio yes
DAC DAC iio yes
DMA DMA dmaengine yes
sigma delta ADC DFSDM iio yes
Audio Playback or Record SAI asoc yes
Audio Playback or Record I2S asoc yes
Audio record, SPDIF SPDIF asoc yes
Audio Record with DFSDM DFSDM asoc yes
Backlight PWM video/backlight yes
BT UART yes
Camera DCMI v4l2 yes
CAN FDCAN network yes
CEC CEC v4l2 yes
Coprocessing IPCC rpm yes
Crypto CRYPTO crypto yes
Crypto HASH crypto yes
Crypto CRC crypto yes
Crypto RNG yes
DDR DDR NA yes
DSI Backlight DSI drm/kms & video/backlight yes
DSI Display DSI drm/kms yes
eMMC SDMMC mmc yes
Ethernet ETH network yes
GPU GPU yes
HDMI Audio I2S asoc yes on DK
HDMI Display LTDC & I2C drm/kms yes
HW spinlock HSEM hw_spinlock yes
I2C I2C i2c yes
RGB display LTDC drm/kms yes
NAND Flash FMC mtd yes
NOR Flash QUADSPI mtd yes
Pin control GPIO Pinctrl yes
Power PSCI1.0 PSCI1.0 yes
PMIC PMIC regulator yes
RTC RTC rtc yes
SDCard - SDR50 SDMMC mmc yes
SDCard - SDR104 SDMMC mmc yes
SPI SPI spi yes
Timers LPTIMER pwm/iio yes
Timers TIMER pwm/iio yes
Timers - Capture TIMER pwm yes
Touchscreen I2C input/touchscreen yes
UART U(S)ART tty yes
USB Host USBH usb yes
USB OTG USBOTG usb yes
Video (GStreamer) NA NA yes
VREFBUF VREFBUF regulator yes
Watchdog IWDG watchdog yes
Wifi SDIO yes

5.2.2 U-boot part[edit]

v2018.11-stm32mp-r2 = U-Boot v2018.11 delivery for STMP32MP15x support
For build details see board/st/stm32mp1/README or STM32MP15 U-Boot wiki page.

  • Adds architecture stm32mp (arch/arm/mach-stm32mp) with STMP32MP15x support
  • Adds the STMicroelectronics board stm32mp1 (board/st/stm32mp1).
    This generic board supports all the bootable devices for all
    STM32MP1 boards with generic distribution feature (CONFIG_DISTRO).
    The supported bootable devices are:
  • SDCard
  • eMMC
  • NOR (SF)
  • NAND devices
  • stm32mp157c-ev1
  • stm32mp157c-ed1
  • stm32mp157a-dk1
  • stm32mp157c-dk2
  • The "Trusted" boot chain (defconfig_file : stm32mp15_trusted_defconfig)
    ROM code => FSBL = Trusted Firmware-A (TF-A) => SSBL = U-Boot in non-secure world - The trusted boot chain is the default boot chain solution delivered by STMicroelectronics with full features support
  • The "Basic" boot chain (defconfig_file : stm32mp15_basic_defconfig)
    ROM code => FSBL = U-Boot SPL => SSBL = U-Boot in secure world - STMicroelectronics upstreams the Basic boot chain with a limited number of features, and the U-Boot community is able to extend this.
  • Adds/Supports drivers in U-Boot
  • RCC drivers for Clock, Reset, Sysreset
  • drivers/clk/clk_stm32mp1.c
  • drivers/reset/stm32-reset.c
  • GPIO (drivers/gpio/stm32f7_gpio.c)
  • PINCONTROL (drivers/pinctrl/pinctrl_stm32.c)
  • UART/USART (drivers/serial/serial_stm32.c)
  • DDR controller and PHY (drivers/ram/stm32mp1)
  • SDCard/MMC controller = SDMMC (drivers/mmc/stm32_sdmmc2.c)
  • NAND controller FMC (drivers/mtd/nand/raw/stm32_fmc2_nand.c)
  • NOR controller QSPI (drivers/spi/stm32_qspi.c)
  • USB OTG controller (OTG DWC2) and PHY (USBPHYC)
  • drivers/phy/phy-stm32-usbphyc.c
  • drivers/usb/gadget/dwc2_udc_otg.c
  • drivers/usb/gadget/gen_udc_otg_phy.c
  • drivers/usb/host/dwc2.c
  • ETH (drivers/net/dwc_eth_qos.c)
  • I2C (drivers/i2c/stm32f7_i2c.c)
  • PWR regulator (arch/arm/mach-stm32mp/pwr_regulator.c)
  • VREF regulator (drivers/power/regulator/stm32-vrefbuf.c)
  • STPMIC1 (PMIC and regulator)
  • drivers/power/pmic/stpmic1.c
  • drivers/power/regulator/stpmic1.c
  • BSEC for OTP (arch/arm/mach-stm32mp/bsec.c)
  • WATCHDOG (drivers/watchdog/stm32mp_wdt.c)
  • ADC (drivers/adc/stm32-adc.c and stm32-adc-core.c)
  • HWSINLOCK (drivers/hwspinlock/stm32_hwspinlock.c)
  • IPCC mailbox (drivers/mailbox/stm32-ipcc.c)
  • VIDEO drivers for LTDC and DSI
  • drivers/video/stm32/stm32_dsi.c
  • drivers/video/stm32/stm32_ltdc.c
  • Panels drivers
  • drivers/video/dw_mipi_dsi.c
  • drivers/video/mipi_display.c
  • drivers/video/orisetech_otm8009a.c
  • drivers/video/raydium-rm68200.c
  • SYSCFG init (in board: board/st/stm32mp1/stm32mp1.c)
  • STMFX gpio expender (drivers/pinctrl/pinctrl-stmfx.c)
  • The added, supported or modified commands are
  • stm32prog for STM32CubeProgrammer tools support (USB or UART) in U-Boot (arch/arm/mach-stm32mp/cmd_stm32prog)
  • rproc for M4 firmware load (drivers/remoteproc/stm32_copro.c)
  • fuse support with 2 banks for OTP (BSEC) and STMPIC1 non volatile memory (drivers/misc/stm32mp_fuse.c)
  • poweroff (arch/arm/mach-stm32mp/cmd_poweroff.c)
  • stm32key (arch/arm/mach-stm32mp/cmd_stm32key.c)
  • Information
  • savenv is not supported (CONFIG_ENV_IS_NOWHERE is activated by default)
  • boot from NAND is not supported for basic boot
  • STM32Cube programmer is not supported by SPL in basic boot

5.2.3 TF-A part[edit]

v2.0-stm32mp-r1 = TF-A v2.0 delivery for STM32MP15 support
For build details see docs/plat/stm32mp1.rst or STM32MP15 TF-A wiki page.

  • Bootrom -> TF-A (BL2) -> TF-A(SP_MIN) -> U-BOOT
  • Bootrom -> TF-A (BL2) -> OP-TEE -> U-BOOT
  • Add stm32mp1 architecture (plat/st/stm32mp1) with STM32MP15 support
  • Following ARM requirements docs/porting-guide.rst
  • Add a stm32mp common part (plat/st/stm32mp)
  • Add stm32 peripherals drivers
  • Official board supports all the following bootable devices:
  • SDCard
  • eMMC
  • NOR (SPI Flash, Single and Dual mode)
  • NAND devices (FMC controlled, BCH4/BCH8, ONFI, NON-ONFI)
  • stm32mp157c-ev1
  • stm32mp157c-ed1
  • stm32mp157a-dk1
  • stm32mp157c-dk2
  • Clock tree configuration based on device tree
  • Platform initialization
  • CSI/HSI Calibration
  • DDR initialization (device tree based) v1.41
  • Secure Boot authentication and integrity check (ECDSA based) using dedicated STM32 header
  • Secure platform configuration over device tree
  • Shared resources management
  • Early watchdog interrupt management
  • Secure interrupt management
  • PSCI support for power management
  • STM32Programmer support
  • Added drivers:
  • BSEC driver for OTP management (drivers/st/bsec/bsec.c)
  • RCC driver for Clock, Reset
      • drivers/st/clk/stm32mp1_clk.c
      • drivers/st/clk/stm32mp1_func.c
      • drivers/st/clk/stm32mp_func.c
      • driver/st/reset/stm32mp1_reset.c
    • DDR controller and PHY
      • drivers/st/ddr/stm32mp1_ddr.c
      • drivers/st/ddr/stm32mp1_ddr_helpers.c
      • drivers/st/ddr/stm32mp1_ram.c
    • ETZPC driver (driver/etzpc/etzpc.c)
    • HASH driver (driver/hash/hash_sec.c)
    • I2C (driver/i2c/stm32_i2c.c)
    • IO interface
      • driver/st/io/io_mmc.c
      • driver/st/io/io_stm32image.c
    • WATCHDOG (driver/st/stm32_iwdg.c)
    • SDCard/MMC controller (driver/st/mmc/stm32_sdmmc.c)
    • NAND controller FMC
      • driver/st/nand/io_nand.c
      • driver/st/nand/nand.c
    • STPMIC1 support
      • driver/st/pmic/stm32mp_pmic.c
      • driver/st/pmic/stpmic1.c
    • NOR controller QSPI (driver/st/qspi/io_qspi.c)
    • RNG driver (driver/st/rng/stm32_rng.c)
    • RTC driver (driver/st/rtc/stm32_rtc.c)
    • TAMPER driver(driver/st/tamper/stm32_tamp.c)
    • TIMER driver for clock calibration (driver/st/timer/stm32_timer.c)
    • UART driver (Console management)
      • driver/st/uart/aarch32/stm32_console.S
      • driver/st/uart/stm32mp1xx_hal_uart.c
    • USB driver (No enumeration)
      • driver/st/usb/usb_dwc2.c
  • Others features:
    • STM32CubeProgrammer support
      • driver/st/io/io_programmer_st_usb.c
      • driver/st/uart/ io_programmer_uart.c
    • ARM SiP services:
      • Definition (plat/st/stm32mp1/services/stm32mp1_svc_setup.c)
      • Clock/Reset (plat/st/stm32mp1/services/rcc_svc.c)
      • Power (plat/st/stm32mp1/services/pwr_svc.c)
      • NVMEM (plat/st/stm32mp1/services/bsec_svc.c)
      • Power Domain (plat/st/stm32mp1/services/low_power_svc.c)
    • Dedicated STM32 Header tools (tools/stm32image/stm32image.c)

5.2.4 OP-TEE part[edit]

3.3.0-stm32mp-r1 = OP-TEE 3.3.0 delivery for STMP32MP15x support
Build instructions can be found in STM32MP15 OP-TEE wiki page.

The delivery includes the OP-TEE OS package for STM32MP15x platforms support as well as the several generic OP-TEE packages: OP-TEE client, OP-TEE examples and OP-TEE tests. This release note describes the changes in the OP-TEE OS package. Other OP-TEE packages not do need any modification to support the STM32MP15x platforms.

Delivery based on OP-TEE release tag 3.3.0 with the following modifications:

  • Add stm32mp1 architecture support for STM32MP15x with OP-TEE core running in internal SYSRAM (OP-TEE pager enabled):
  • core/arch/arm/plat-stm32mp1/*
  • Update STM32 UART driver for OP-TEE debug (output) console:
  • core/drivers/stm32_uart.c
  • Add generic board configuration through device tree technology and STM32MP15x boards description:
  • stm32mp157c-ev1
  • stm32mp157c-ed1
  • stm32mp157c-dk2
  • stm32mp157a-dk1 available for test only as it does not support suspend/resume mode.
  • core/secure_dt.mk & changes in core/arch/arm/generic_boot.c
  • core/arch/arm/fdts/*
  • core/include/dt-bindings/*
  • Add stm32mp1 platform clocks, reset and PWR drivers:
    Clock driver excludes clock tree parenthood configuration which is expected from the secure bootloader for consistency considerations.
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_clk.c
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_rcc.c
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.c
  • core/arch/arm/plat-stm32mp1/drivers/stm32_reset.c
  • Add stm32mp1 platform CSI/HSI calibration, using STM32 TIM driver:
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_calib.c
  • core/drivers/stm32_timer.c
  • Add STPMIC1 driver and stm32mp1 platform driver for STPMIC1:
  • core/drivers/stpmic1.c
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
  • Add several STM32 drivers:
  • STM32 BSEC (OTP): core/drivers/stm32_i2c.c
  • STM32 ETZPC: core/drivers/stm32_etzpc.c
  • STM32 GPIO and pin muxing: core/drivers/stm32_gpio.c
  • STM32 I2C: core/drivers/stm32_i2c.c
  • STM32 IWDG: core/drivers/stm32_iwdg.c
  • STM32 RNG: core/drivers/stm32_rng.c
  • STM32 RTC: core/drivers/stm32_rtc.c
  • STM32 TIM: core/drivers/stm32_timer.c (support for HSI/CSI calibration only)
  • Support assignment of peripheral to secure and/or non-secure world:
  • core/arch/arm/plat-stm32mp1/shared_resources.c
  • Add SiP platform services for BSEC, PWR and RCC accesses from non-secure world:
  • core/arch/arm/plat-stm32mp1/service/bsec_svc.c
  • core/arch/arm/plat-stm32mp1/service/pwr_svc.c
  • core/arch/arm/plat-stm32mp1/service/rcc_svc.c
  • Add platform suspend/resume for platform low power support over PSCI protocol:
    This includes a DDR driver for autorefresh mode and SiP services for power states configuration.
  • core/arm/arch/plat-stm32mp1/pm/*
  • core/arch/arm/plat-stm32mp1/drivers/stm32mp1_ddr.c
  • core/arch/arm/plat-stm32mp1/service/low_power.c
  • Update GIC driver for low power state supports:
  • core/drivers/gic.c
  • core/kernel/interrupt.c
  • Add generic timeout detection functions:
  • core/arch/arm/kernel/delay.c
  • Update generic memory mapping driver to support mapping of secure read-only memory:
  • core/arch/arm/mm/core_mmu.c
  • Update generic CPU suspend support to support LPAE mapping:
  • core/arch/arm/sm/pm_a32.S
  • Util for pre-formating OP-TEE boot images for verified boot (STM32 Header tool):
  • core/arch/arm/plat-stm32mp1/stm32image.py

6 Recommendations for use[edit]

6.1 Safe use[edit]

  • Flash-load and boot from all supported Flash devices: SDCard, eMMC, ONFI NAND and NOR Flash memories
  • Develop Linux® applications, libraries, kernel modules based on OpenSTLinux delivery
  • Develop coprocessor Cube applications based on STM32CubeMP1 delivery
  • Develop boards based on STM32MP15
  • Prototype applications based on ST boards

6.2 Non-recommended use[edit]

  • None

7 Main restrictions list[edit]

  • CubeMX configuration panels propose some internal peripheral modes not supported by TF-A or OP-TEE drivers running in Cortex-A7 secure context.
  • The following table lists all known restrictions.
IP Information/Restriction usage in Cortex-A7 secure context
I2C4/I2C6 The SMBus-two-wire-Interface mode proposed is not supported for Cortex-A7 secure context (TF-A , OP-TEE) as no use case foreseen
PWR TF-A and OP-TEE implementation do not support wake-up events for secure IPs assigned to Cortex-A7 secure context
RCC The master clock output1 et 2, Audio clock input modes proposed are not applicable for Cortex-A7 secure context (TF-A, OP-TEE)
SPI6 The SPI SW driver is not available in OP-TEE implementation for Cortex-A7 secure context
TAMP OP-TEE implementation does not support TAMP_IN inputs and TAMP_OUT outputs in Cortex-A7 secure context
USART1 OP-TEE implementation does not support USART synchronous mode in Cortex-A7 secure context
Warning white.png Warning
Stm32mp157c-dk2: The display may not work at all for some of them. You need to use the patches delivered here

.

8 Minor release updates[edit]

STMicroelectronics regularly delivers corrections through github® components which are u-boot, optee-os, tf-a, Linux kernel.
You can decide to incorporate them into your developer package (please refer to STM32MP1 Developer Package) or Distribution package.
For updating Distribution package please proceed as follow:

  1. Switch to github® mode your Distribution package
  2. Use the command devtool modify <recipe name> to have direct access to source code git used by build process
  3. In source code just extracted, use git command as git checkout -b WORK <github® TAG> to points on new revision of component

More rarely and independently, STMicroelectronics also delivers fixes on layers through github®. These changes can be integrated (via git commands) into your local STM32MP1 Distribution Package environment. Please find below the github® links of the quoted layers :

8.1 v1.0.1[edit]

Component Recipe name new github® release
tf-a tf-a-stm32mp v2.0-stm32mp-r1.1
u-boot u-boot-stm32mp v2018.11-stm32mp-r2.1
kernel linux-stm32mp no update
optee-os optee-os-stm32mp 3.3.0-stm32mp-r1.1

8.2 v1.0.2[edit]

Component Recipe name new github® release
tf-a tf-a-stm32mp v2.0-stm32mp-r1.2
u-boot u-boot-stm32mp v2018.11-stm32mp-r2.2
kernel linux-stm32mp v4.19-stm32mp-r1.2
optee-os optee-os-stm32mp v4.19-stm32mp-r1.2

8.3 v1.0.3[edit]

Component Recipe name new github® release
tf-a tf-a-stm32mp v2.0-stm32mp-r1.3
u-boot u-boot-stm32mp v2018.11-stm32mp-r2.3
kernel linux-stm32mp v4.19-stm32mp-r1.3
optee-os optee-os-stm32mp 3.3.0-stm32mp-r1.3

8.4 v1.0.4[edit]

Component Recipe name new github® release
tf-a tf-a-stm32mp v2.0-stm32mp-r1.4
u-boot u-boot-stm32mp v2018.11-stm32mp-r2.4
kernel linux-stm32mp v4.19-stm32mp-r1.4
optee-os optee-os-stm32mp no update

8.5 v1.0.5[edit]

Component Recipe name new github® release
tf-a tf-a-stm32mp v2.0-stm32mp-r1.5
u-boot u-boot-stm32mp v2018.11-stm32mp-r2.5
kernel linux-stm32mp v4.19-stm32mp-r1.5
optee-os optee-os-stm32mp 3.3.0-stm32mp-r1.4

9 How to get started with openstlinux-4.19-thud-mp1-19-02-20[edit]

Refer to How to get the software and start with this release.

10 Associated tools[edit]

Refer to the Referenced tools release notes .

11 Change log / Main changes[edit]

Initial version.

12 Detailed delivery content[edit]

12.1 Detailed description of STMicroelectronics layers[edit]

In OpenEmbedded, the build framework which was chosen by the OpenSTLinux distribution, a layer is a collection of recipes and/or configurations that can be used on top of OE-Core.

Typically, each layer is organized around a specific theme, such as adding recipes for building web browser software.

The implemented layers are listed below, together with the list of recipes contained in each layer and the related information.

12.1.1 meta-st-stm32mp[edit]

Name of layer Description
meta-st-stm32mp BSP Layer for stm32mp
Recipe Name Path of recipe License Description
alsa-state-stm32mp1 meta-st/meta-st-stm32mp/recipes-bsp/alsa/alsa-state-stm32mp1.bb MIT Alsa scenario files to enable alsa state restoration
gcnano-driver-stm32mp meta-st/meta-st-stm32mp/recipes-bsp/drivers/gcnano-driver-stm32mp_6.2.4.bb GPLv1 & MIT GCNano kernel drivers
tf-a-stm32mp meta-st/meta-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.0.bb BSD-3-Clause Trusted Firmware-A for STM32MP1
u-boot-stm32mp-extlinux meta-st/meta-st-stm32mp/recipes-bsp/u-boot/u-boot-stm32mp-extlinux.bb MIT Generate 'extlinux.conf' file for U-boot
u-boot-stm32mp-splash meta-st/meta-st-stm32mp/recipes-bsp/u-boot/u-boot-stm32mp-splash_2018.11.bb Proprietary Universal Boot Loader Splash Screen for stm32mp embedded devices
u-boot-stm32mp meta-st/meta-st-stm32mp/recipes-bsp/u-boot/u-boot-stm32mp_2018.11.bb GPLv2+ Universal Boot Loader for embedded devices for stm32mp (trusted)
wifi-suspend meta-st/meta-st-stm32mp/recipes-connectivity/wifi/wifi-suspend.bb MIT Systemd service to suspend/resume correctly the wifi
gcc-arm-none-eabi-native meta-st/meta-st-stm32mp/recipes-devtools/gcc-arm-none-eabi/gcc-arm-none-eabi-native_7.bb GPL-3.0-with-GCC-exception & GPLv3 Baremetal GCC for ARM
nativesdk-gcc-arm-none-eabi meta-st/meta-st-stm32mp/recipes-devtools/gcc-arm-none-eabi/nativesdk-gcc-arm-none-eabi_7.bb GPL-3.0-with-GCC-exception & GPLv3 Baremetal GCC for ARM
openocd-stm32mp meta-st/meta-st-stm32mp/recipes-devtools/openocd/openocd-stm32mp_0.10.0.bb GPLv2 Free and Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing
sdcard-raw-tools meta-st/meta-st-stm32mp/recipes-devtools/sdcard-raw-tools/sdcard-raw-tools.bb MIT script for creating raw SDCARD image ready to flash
linux-examples-stm32mp1 meta-st/meta-st-stm32mp/recipes-extended/linux-examples/linux-examples-stm32mp1.bb Proprietary ST STM32MP1 projects for Linux examples
m4fwcoredump meta-st/meta-st-stm32mp/recipes-extended/m4coredump/m4fwcoredump.bb MIT Script to manage coredump of cortexM4
m4projects-stm32mp1 meta-st/meta-st-stm32mp/recipes-extended/m4projects/m4projects-stm32mp1.bb Proprietary ST STM32MP1 Examples for CM4
gcnano-userland-multi-binary-debug-stm32mp meta-st/meta-st-stm32mp/recipes-graphics/gcnano-userland/gcnano-userland-multi-binary-debug-stm32mp.bb Proprietary [DEBUG] Vivante libraries OpenGL ES, OpenVG and EGL (multi backend)
gcnano-userland-multi-binary-stm32mp meta-st/meta-st-stm32mp/recipes-graphics/gcnano-userland/gcnano-userland-multi-binary-stm32mp.bb Proprietary Vivante libraries OpenGL ES, OpenVG and EGL (multi backend)
linux-firmware-bluetooth-bcm4343 meta-st/meta-st-stm32mp/recipes-kernel/linux-firmware/linux-firmware-bluetooth-bcm4343.bb Firmware-cypress-bcm4343 Bluetooth firrmware for BCM4343
linux-stm32mp meta-st/meta-st-stm32mp/recipes-kernel/linux/linux-stm32mp_4.14.bb GPLv2 Linux STM32MP Kernel
optee-os-stm32mp meta-st/meta-st-stm32mp/recipes-security/optee/optee-os-stm32mp_3.3.0.bb BSD OPTEE OS for stm32mp
st-image-bootfs meta-st/meta-st-stm32mp/recipes-st/images/st-image-bootfs.bb MIT STM32MP bootfs Image
st-image-userfs meta-st/meta-st-stm32mp/recipes-st/images/st-image-userfs.bb MIT STM32MP userfs Image
st-image-vendorfs meta-st/meta-st-stm32mp/recipes-st/images/st-image-vendorfs.bb MIT STM32MP vendorfs Image
hidapi-stm32mp meta-st/meta-st-stm32mp/recipes-support/hidapi/hidapi-stm32mp_0.8.0-rc1.bb BSD-3-Clause GPLv3 Multi-platform library to interface with USB and Bluetooth HID-Class devices
libopencsd meta-st/meta-st-stm32mp/recipes-support/libopencsd/libopencsd_0.10.0.bb BSD-3-Clause SUMMARY=CoreSight Trace Decode library
Addons on recipes: configuration, patch, ..
Recipe Name Path of recipe
alsa-lib meta-st/meta-st-stm32mp/recipes-bsp/alsa/alsa-lib_%.bbappend
base-files meta-st/meta-st-stm32mp/recipes-core/base-files/base-files_%.bbappend
busybox meta-st/meta-st-stm32mp/recipes-core/busybox/busybox_%.bbappend
systemd-conf meta-st/meta-st-stm32mp/recipes-core/systemd/systemd-conf.bbappend
bison meta-st/meta-st-stm32mp/recipes-devtools/bison/bison_%.bbappend
gdb-cross-canadian meta-st/meta-st-stm32mp/recipes-devtools/gdb/gdb-cross-canadian_%.bbappend
gdb-cross meta-st/meta-st-stm32mp/recipes-devtools/gdb/gdb-cross_%.bbappend
libdrm meta-st/meta-st-stm32mp/recipes-graphics/drm/libdrm_%.bbappend
weston-init meta-st/meta-st-stm32mp/recipes-graphics/wayland/weston-init.bbappend
weston meta-st/meta-st-stm32mp/recipes-graphics/wayland/weston_5.0.0.bbappend
linux-firmware meta-st/meta-st-stm32mp/recipes-kernel/linux-firmware/linux-firmware_git.bbappend
pulseaudio meta-st/meta-st-stm32mp/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend

12.1.2 meta-st-stm32mp-addons[edit]

Name of layer Description
meta-st-stm32mp-addons BSP addons layer for stm32mp
Addons on recipes: configuration, patch, ..
Recipe Name Path of recipe
alsa-state-stm32mp1 meta-st/meta-st-stm32mp-addons/recipes-bsp/alsa/alsa-state-stm32mp1.bbappend
tf-a-stm32mp meta-st/meta-st-stm32mp-addons/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_%.bbappend
u-boot-stm32mp meta-st/meta-st-stm32mp-addons/recipes-bsp/u-boot/u-boot-stm32mp_%.bbappend
linux-stm32mp meta-st/meta-st-stm32mp-addons/recipes-kernel/linux/linux-stm32mp_%.bbappend
m4projects-stm32mp1 meta-st/meta-st-stm32mp-addons/recipes-extended/m4projects/m4projects-stm32mp1.bbappend

12.1.3 meta-st-openstlinux[edit]

Name of layer Description
meta-st-openstlinux OpenSTLinux layer - framework/image settings
Recipe Name Path of recipe License Description
resize-helper meta-st/meta-st-openstlinux/recipes-bsp/tools/resize-helper.bb GPLv2+ Tools for resizing the file system
usbotg-gadget-config meta-st/meta-st-openstlinux/recipes-bsp/tools/usbotg-gadget-config.bb MIT The goal is to enable USB Ethernet & MSC gadget
psplash-drm meta-st/meta-st-openstlinux/recipes-core/psplash/psplash-drm.bb MIT Basic splash screen displaying a picture on DRM/KMS
systemd-mount-partitions meta-st/meta-st-openstlinux/recipes-core/systemd/systemd-mount-partitions.bb MIT Mount partitions
systemd-networkd-configuration meta-st/meta-st-openstlinux/recipes-core/systemd/systemd-networkd-configuration.bb MIT Basic networkd configuration
lsb-openstlinux meta-st/meta-st-openstlinux/recipes-extended/lsb/lsb-openstlinux.bb GPLv2+ LSB support for checking gpu provider
openstlinux-qt-eglfs meta-st/meta-st-openstlinux/recipes-qt/qt5/openstlinux-qt-eglfs.bb MIT add script and material to help with eglfs qt configuration
ai-hand-char-reco-launcher meta-st/meta-st-openstlinux/recipes-samples/ai-nn-application/ai-hand-char-reco-launcher.bb GPLv2 & BSD-3-Clause Hand writing character recognition launcher based on HCR Neural Network
demo-launcher meta-st/meta-st-openstlinux/recipes-samples/demo/demo-launcher.bb Proprietary Python script which launch several use-cases
sensors-iks01a2 meta-st/meta-st-openstlinux/recipes-samples/demo/sensors-iks01a2.bb Proprietary Python script which monitors the temperature measured by the Nucleo extension board iks01a2a on-board sensor
demo-hotspot-wifi meta-st/meta-st-openstlinux/recipes-samples/hotspot-wifi/demo-hotspot-wifi.bb MIT Shell script to enable/disable hotsopt wifi configuration
st-example-image-qt meta-st/meta-st-openstlinux/recipes-samples/images/st-example-image-qt.bb Proprietary STMicroelectronics example of image based on QT framework.
st-example-image-x11 meta-st/meta-st-openstlinux/recipes-samples/images/st-example-image-x11.bb Proprietary STMicroelectronics example of image based on X11.
st-example-image-xfce meta-st/meta-st-openstlinux/recipes-samples/images/st-example-image-xfce.bb Proprietary STMicroelectronics example of image based on XFCE framework.
optee-client meta-st/meta-st-openstlinux/recipes-security/optee/optee-client_git.bb BSD OPTEE client
optee-examples meta-st/meta-st-openstlinux/recipes-security/optee/optee-examples.bb GPLv2 OP-TEE examples
optee-test meta-st/meta-st-openstlinux/recipes-security/optee/optee-test_git.bb BSD & GPLv2 OP-TEE sanity testsuite
packagegroup-optee-core meta-st/meta-st-openstlinux/recipes-security/packagegroups/packagegroup-optee-core.bb LGPLv2+ OP-TEE core packagegroup
packagegroup-optee-test meta-st/meta-st-openstlinux/recipes-security/packagegroups/packagegroup-optee-test.bb LGPLv2+ OP-TEE test packagegroup
libsmaf meta-st/meta-st-openstlinux/recipes-security/smaf/libsmaf.bb LGPLv2.1 SMAF library
st-image-core meta-st/meta-st-openstlinux/recipes-st/images/st-image-core.bb Proprietary OpenSTLinux core image.
st-image-weston meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bb Proprietary OpenSTLinux weston image with basic Wayland support (if enable in distro).
packagegroup-framework-tools meta-st/meta-st-openstlinux/recipes-st/packagegroups/packagegroup-framework-tools.bb MIT Frameworks components
packagegroup-gstreamer1-0 meta-st/meta-st-openstlinux/recipes-st/packagegroups/packagegroup-gstreamer1-0.bb LGPLv2+ Gstreamer 1.0 components
Recipes addons, such as configurations and patches.
Recipe name Recipe path
openssh meta-st/meta-st-openstlinux/oe-core/recipes-connectivity/openssh/openssh_%.bbappend
packagegroup-core-ssh-openssh meta-st/meta-st-openstlinux/oe-core/recipes-core/packagegroups/packagegroup-core-ssh-openssh.bbappend
dpkg meta-st/meta-st-openstlinux/oe-core/recipes-devtools/dpkg/dpkg_%.bbappend
ckermit meta-st/meta-st-openstlinux/oe-core/recipes-support/ckermit/ckermit_%.bbappend
libiio meta-st/meta-st-openstlinux/oe-core/recipes-support/libiio/libiio_git.bbappend
glmark2 meta-st/meta-st-openstlinux/recipes-benchmark/glmark2/glmark2_%.bbappend
bluez5 meta-st/meta-st-openstlinux/recipes-connectivity/bluez5/bluez5_%.bbappend
connman meta-st/meta-st-openstlinux/recipes-connectivity/connman/connman_%.bbappend
busybox meta-st/meta-st-openstlinux/recipes-core/busybox/busybox_%.bbappend
meta-environment meta-st/meta-st-openstlinux/recipes-core/meta/meta-environment.bbappend
packagegroup-core-eclipse-debug meta-st/meta-st-openstlinux/recipes-core/packagegroups/packagegroup-core-eclipse-debug.bbappend
packagegroup-core-tools-profile meta-st/meta-st-openstlinux/recipes-core/packagegroups/packagegroup-core-tools-profile.bbappend
systemd-conf meta-st/meta-st-openstlinux/recipes-core/systemd/systemd-conf.bbappend
systemd-serialgetty meta-st/meta-st-openstlinux/recipes-core/systemd/systemd-serialgetty.bbappend
systemd meta-st/meta-st-openstlinux/recipes-core/systemd/systemd_%.bbappend
cairo meta-st/meta-st-openstlinux/recipes-graphics/cairo/cairo_%.bbappend
kmscube meta-st/meta-st-openstlinux/recipes-graphics/kmscube/kmscube_git.bbappend
lxdm meta-st/meta-st-openstlinux/recipes-graphics/lxdm/lxdm_0.5.3.bbappend
wayland-protocols meta-st/meta-st-openstlinux/recipes-graphics/wayland/wayland-protocols_1.10.bbappend
weston-init meta-st/meta-st-openstlinux/recipes-graphics/wayland/weston-init.bbappend
xserver-nodm-init meta-st/meta-st-openstlinux/recipes-graphics/x11-common/xserver-nodm-init_%.bbappend
xinit meta-st/meta-st-openstlinux/recipes-graphics/xorg-app/xinit_%.bbappend
pixman meta-st/meta-st-openstlinux/recipes-graphics/xorg-lib/pixman_0.34.0.bbappend
alsa-utils meta-st/meta-st-openstlinux/recipes-multimedia/alsa/alsa-utils_1.1.4.bbappend
gstreamer1.0-libav meta-st/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.14.2.bbappend
gstreamer1.0-plugins-bad meta-st/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.2.bbappend
gstreamer1.0-plugins-base meta-st/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.12.2.bbappend
gstreamer1.0-plugins-good meta-st/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.12.2.bbappend
pulseaudio meta-st/meta-st-openstlinux/recipes-multimedia/pulseaudio/pulseaudio_10.0.bbappend
v4l-utils meta-st/meta-st-openstlinux/recipes-multimedia/v4l2apps/v4l-utils_1.12.3.bbappend
packagegroup-qt5-toolchain-target meta-st/meta-st-openstlinux/recipes-qt/packagegroups/packagegroup-qt5-toolchain-target.bbappend
qtbase meta-st/meta-st-openstlinux/recipes-qt/qt5/qtbase_git.bbappend
qtmultimedia meta-st/meta-st-openstlinux/recipes-qt/qt5/qtmultimedia_git.bbappend
st-image-userfs meta-st/meta-st-openstlinux/recipes-samples/images/st-image-userfs.bbappend
packagegroup-framework-tools meta-st/meta-st-openstlinux/recipes-st/packagegroups/packagegroup-framework-tools.bbappend
ntp meta-st/meta-st-openstlinux/recipes-support/ntp/ntp_%.bbappend
netdata meta-st/meta-st-openstlinux/recipes-webadmin/netdata/netdata_git.bbappend