This article aims to describe the content of the release STM32MP15-Ecosystem-v1.1.0 for STM32MPU Embedded Software distribution and its associated ecosystem.
1 Delivery purpose and scope[edit source]
The purpose of this delivery is the first evolutive maintenance of the Mass Market release, aka STM32MP1-v1.1.0. It includes both fixes and new features.
Scope of this ecosystem delivery, dedicated to STM32MP15 devices, is:
- The STM32MPU Embedded Software distribution:
- The OpenSTLinux distribution running on the Arm® Cortex®-A7 processor(s)
- The STM32Cube MPU Package running on the Arm® Cortex®-M4 processor
- The STM32 MPU Distribution for Android running on the Arm® Cortex®-A7 processor(s) and on STM32MP15 Evaluation board
- STM32CubeIDE (New STM32 IDE targeted to replace STM32-CoPro-MPU Eclipse plugin)
- STM32CubeMX
- STM32CubeProgrammer
- Keygen tool
- Signing tool
- Documentation
- This user guide (wiki format)
- Documentation package
- STM32MP15 Evaluation board (for OpenSTLinux, STM32CubeMP1 and STM32 MPU Distribution for Android)
- STM32MP15 Discovery kit (for OpenSTLinux, STM32CubeMP1)
Aim of this release
- To provide a full ecosystem for STM32MP15x devices.
- To work efficiently with STM32MP15 boards, using one of the Packages developed by STMicroelectronics for STM32 MPU devices (Starter Package, Developer Package, Distribution Package). See Which Package better suits your needs for more information on these Packages.
2 Intended audience[edit source]
The targeted audience consists in STMicroelectronics customers.
3 Licensing[edit source]
This software package is licensed under SOFTWARE LICENSE AGREEMENT, the "SLA". Customer may not use this package except in compliance with the software license agreement (SLA).
4 Main features / main highlights[edit source]
4.1 Boards[edit source]
Same as ST32MP15 Ecosystem release v1.0.0
Boards | PCBs list | Content | Availability | Distribution Package | Starter Package | Developper Package |
---|---|---|---|---|---|---|
EVAL Rev.C | MB1263C (Daughter) + MB1262C (Mother) + MB1230C (Display) + MB1379A (Camera) |
STM32MP1 STM32MP157AAA3 Rev.B PMIC STPMIC1APQR cut1.2 external oscillator |
Jan'19 | Machine stm32mp1-boards-revc for all flashs Machine stm32mp1-eval-revc for SDCard |
EVAL Rev.C Starter Package | EVAL Rev.C Developer Package |
DISCO Rev.C | MB1272C (Mother) + MB1407B (Display) |
STM32MP1 STM32MP157CAC3 Rev.B PMIC STPMIC1APQR cut1.2 external oscillator |
Jan'19 | Machine stm32mp1-boards-revc for all flashs Machine stm32mp1-disco-revc for SDCard |
DISCO Rev.C Starter Package | DISCO Rev.C Developer Package |
- Warning STLINK in EVAL and DISCO Rev.C boards integrates the latest firmware STLINK (V2J32M22) which requires upgraded USB PC drivers - Windows USB driver
4.2 Embedded software[edit source]
4.2.1 OpenSTLinux (Cortex®-A7)[edit source]
- STM32MP15 microprocessor support with following components:
- Kernel version LTS v4.19.49
- TF-A version v2.0
- U-Boot version v2018.11
- OP-TEE version v3.3.0
- openOCD version v0.10.0
- Build process
- OpenEmbedded Thud (v2.6)
- GCC version v8.2
- Applicative components
- Weston version v5.0.0
- GStreamer version v1.14.4
- GCnano version v6.2.4
- Openstlinux-4.19-thud-mp1-19-10-09 release. Main new features are :
- DDRPERFM
- RCC Spread Spectrum
- Audio 16 bits records
- U-boot ENV
- GPU stack 6.2.4p4
- U-boot – SPI driver
- USB OTG Device/host on DK1/DK2
- DK1/DK2 ARDUINO connector definition
- GPU suspend/resume
- LPLV-Stop support
- FMC NAND 2CS
- SPI NAND kernel
- DFSDM fast mode support
Boot configurations
- At boot, you can select two kernel configurations:
- Configuration 1: All internal peripherals assigned to Cortex-A7 for Linux drivers, Cortex-M4 co-processing firmware TTY executed by default
- Configuration 2: Some internal peripherals assigned to Cortex-M4 to execute Cortex-M4 delivered examples on the board (EVAL or DISCO) see (How to run Cortex-M4 examples).
- Configuration 1 activated by default if you do not specify 2 in the console at boot.
4.2.2 STM32CubeMP1 (Cortex®-M4)[edit source]
- STM32CubeMP1 v1.0.0 release, delivered with Ecosystem STM32MP1-v1.0.0
- The STM32Cube HAL, STM32 abstraction layer embedded software ensuring maximized portability across the STM32 portfolio. HAL APIs are available for all peripherals.
- Low-layer APIs (LL) offering a fast lightweight expert-oriented layer that is closer to the hardware than the HAL. LL APIs are available only for a set of peripherals.
- A consistent set of middleware components such as FreeRTOS, OpenAMP.
- All embedded software utilities, delivered with a full set of examples.
- STM32CubeMP1 v1.1.0 delivered with Ecosystem STM32MP1-v1.1.0
- KEIL Project template
- IAR Project template
- CubeIDE Project template
- New LL drivers (I2C, EXTI, DMA, LPTIM, TIM, WWDG, PWR, SPI, HSEM)
- New Example (Basic CSTOP example)
- CMSIS V5.4.0
- New OpenAMP structure
- New Application (OpenAMP Dynamic Resources Manager example)
4.2.3 STM32 MPU Distribution for Android (Cortex®-A7)[edit source]
- st-android-9.0.0-2019-09-27 release, delivered with Ecosystem STM32MP1-v1.1.0
- Android 9 porting on OpenSTLinux BSP v1.1.0 for UI enabler
- Android certifications not covered
- Based on OpenSTLinux BSP for TF-A, U-BOOT, OPTEE, KERNEL
4.3 STM32CubeProgrammer, Signing tool, Keygen[edit source]
- V2.0.0 release, delivered with Ecosystem STM32MP1-v1.0.0
- The CuberProg installer includes STM32CubeProgrammer, Keygen and Signing tools
- Flashload SDCard, eMMC, NAND, NOR images through USB and UART for EV1, DK1, DK2 boards
- Private and public keys generation
- Images signature with hash public key
- Flashlayout file format change
- STM32MP1 fuses management (with console interface only)
- PMIC NVM management (with console interface only)
- V2.2.0 release delivered with Ecosystem STM32MP1-v1.1.0
- Maintenance release for CubeProgrammer only
4.4 STM32CubeMX[edit source]
- V5.1 release, delivered with Ecosystem STM32MP1-v1.0.0
- V5.4 release delivered with Ecosystem STM32MP1-v1.1.0. Main new features are :
- For M4 projects, IAR support, Keil support and CubeIDE project support
- RCC spread spectrum support in device tree
- Device tree compliance with OpenSTLinux V1.1.0
- Compliant with STM32CubeMP1 V1.1.0
- LL drivers (DMA/SYS/ LPTIM/ SPI/RCC/GPIO/PWR/WWDG/USART/I2C)
4.5 STM32CubeIDE[edit source]
- SW4STM32 IDE V2.9.0 release, delivered with Ecosystem STM32MP1-v1.0.0
- STM32CubeIDE V1.1.0 release, delivered with Ecosystem STM32MP1-v1.1.0
STM32CubeIDE tool is now the Eclipse IDE ST reference.
- The STM32CubeIDE V1.1.0 release supports same features set as SW4STM32 IDE V2.9.0 :
- Cortex-M4 STM32CubeMP1 in Production mode and Engineering mode
- Cortex-M4 Firmware compilation, Load, Debug
- PC Linux with Ethernet (recommended) or serial link
- PC Windows with Ethernet or Ethernet over USB link
- Cortex-M4 Firmware installation directory configurable
4.6 Miscellaneous[edit source]
- Detailed features are available in the release notes of the different items constituting this delivery.
- See sections STM32MPU Embedded Software distribution detailed release notes , Referenced tools release notes and Reference documents
5 Recommendations of use[edit source]
5.1 Safe[edit source]
- Develop board based on STM32MP1
- Flashload and boot from all flashes SDCard, eMMC, NAND ONFI, NOR
- Application can activate Low power modes (STOP and STANDBY)
- Develop Linux application, libraries, kernel modules based on OpenSTLinux delivery
- Develop Cube application with co-processing link based on Cube delivery
- Prototype some applications based on ST boards
- Stress available features
5.2 Not recommended[edit source]
6 Main restriction list[edit source]
6.1 Boards[edit source]
- None
6.2 Embedded software[edit source]
- OpenSTLinux restrictions - See details in STM32MP15_OpenSTLinux_release_note_-_v1.1.0#Main_restrictions_list
- STM32CubeMP1 restrictions - See details in STM32CubeMP1_Package_release_note_-_v1.1.0#Known_issues_and_limitations
- STM32 MPU Distribution for Android - See details in STM32MP15_distribution_for_Android_release_note_-_v1.0.0#Main_restrictions_list
6.3 STM32CubeProgrammer, signing tool, key generator[edit source]
- None
6.4 STM32CubeMX[edit source]
6.5 STM32CubeIDE[edit source]
6.6 Miscelleanous[edit source]
- Exhaustive restriction lists are available in the release notes of each delivery.
- See sections STM32MPU Embedded Software distribution detailed release notes and Referenced tools release notes .
- Implemented SW workarounds information in STM32MP15-Ecosystem-v1.0.0 release based on workarounds proposed in STM32MP15xx device errata. See STM32MP15_ecosystem_errata_sheet
7 Minor release updates (coming soon)[edit source]
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:
- Switch to github® mode your Distribution package
- Use the command devtool modify <recipe name> to have direct access to source code git used by build process
- 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 Reference documents[edit source]
All the resources for the STM32MP1 Series are in the Resources area of the STM32MP1 Series web page.
The resources below are referenced in some of the articles in this user guide for the STM32MP1 Series.
means that the document (or its version) is new compared to what was delivered for the previous ecosystem release.
Reference | Name | Link | Version |
---|---|---|---|
Application notes | |||
AN4803 | High-speed SI simulations using IBIS and board-level simulations using HyperLynx® SI on STM32 MCUs and MPUs | AN4803.pdf | v2.0 |
AN4860 | DSI Host on STM32F469/479, STM32F7x8/x9 and STM32L4R9/S9 MCUs | AN4860.pdf | v2.0 |
AN5027 | Interfacing PDM digital microphones using STM32 MCUs and MPUs | AN5027.pdf | v2.0 |
AN5031 | Getting started with STM32MP15 Series hardware development | AN5031.pdf | v1.0 |
AN5036 | Thermal management guidelines for STM32 applications | AN5036.pdf | v3.0 |
AN5109 | STM32MP1 Series using low-power modes | AN5109.pdf | v3.0 |
AN5122 | STM32MP1 Series DDR memory routing guidelines | AN5122.pdf | v3.0 |
AN5168 | STM32MP1 series DDR configuration | AN5168.pdf | v1.0 |
AN5225 | USB Type-C™ Power Delivery using STM32xx Series MCUs and STM32xxx Series MPUs | AN5225.pdf | v2.0 |
AN5253 | Migration of microcontroller applications from STM32F4x9 lines to STM32MP151, STM32MP153 and STM32MP157 lines microprocessor | AN5253.pdf | v1.0 |
AN5256 | STM32MP151, STM32MP153 and STM32MP157 discrete power supply hardware integration | AN5256.pdf | v1.0 |
AN5275 | USB DFU/USART protocols used in STM32MP1 Series bootloaders | AN5275.pdf | v1.0 |
AN5284 | STM32MP1 series system power consumption | AN5284.pdf | v1.0 |
AN5348 | FDCAN peripheral on STM32 devices | AN5348.pdf | v1.0 |
Datasheets[1] | |||
DS12505 | STM32MP157C datasheet (secure) |
DS12505.pdf | v2.0 |
DS12504 | STM32MP157A datasheet (basic) |
DS12504.pdf | v2.0 |
DS12503 | STM32MP153C datasheet (secure) |
DS12503.pdf | v2.0 |
DS12502 | STM32MP153A datasheet (basic) |
DS12502.pdf | v2.0 |
DS12501 | STM32MP151C datasheet (secure) |
DS12501.pdf | v2.0 |
DS12500 | STM32MP151A datasheet (basic) |
DS12500.pdf | v2.0 |
DS12792 | STPMIC1 datasheet |
stpmic1.pdf | v2.0 |
Errata sheets | |||
ES0438 | STM32MP15xx device errata | ES0438.pdf | v2.0 |
Reference manuals[1] | |||
RM0436 | STM32MP157 reference manual (STM32MP157xxx advanced Arm®-based 32-bit MPUs) |
RM0436.pdf | v3.0 |
RM0442 | STM32MP153 reference manual (STM32MP153xxx advanced Arm®-based 32-bit MPUs) |
RM0442.pdf | v3.0 |
RM0441 | STM32MP151 reference manual (STM32MP151xxx advanced Arm®-based 32-bit MPUs) |
RM0441.pdf | v3.0 |
Boards schematics | |||
MB1262 schematics | STM32MP157C-EV1 motherboard schematics MB1262-C01 board schematic (Evaluation board) |
MB1262-C01.pdf | v1.0 |
MB1263 schematics | STM32MP157C-EV1 daughterboard schematics MB1263-C01 board schematic (Evaluation board) |
MB1263-C01.pdf | v1.0 |
MB1230 schematics | DSI 720p LCD display daughterboard schematics MB1230-C board schematic (Evaluation board) |
MB1263-C.pdf | v1.1 |
MB1379 schematics | Camera daughterboard schematics MB1379-A01 board schematic (Evaluation board) |
MB1379-A01.pdf | v1.0 |
MB1272 schematics | STM32MP157x-DKx motherboard schematics MB1272-DK2-C01 board schematic (Discovery kit) |
MB1272-C01.pdf | v1.0 |
MB1407 schematics | STM32MP157x-DKx daughterboard schematics MB1407-LCD-C01 board schematic (Discovery kit) |
MB1407-C01.pdf | v1.0 |
Boards user manuals | |||
UM2535 | STM32MP157x-EV1 evaluation board user manual | UM2535.pdf | v2.0 |
UM2534 | STM32MP157x-DKx discovery board user manual | UM2534.pdf | v1.0 |
9 How to get the software and start with this release?[edit source]
The list of embedded software packages available for downloaded depends on the Package to be used.
More information can be found on STM32MPU Embedded Software distribution and the supported Packages, at:
- Which Package better suits your needs
- STM32MPU Embedded Software distribution
- STM32MPU Embedded Software distribution for Android
The table below provides the available board part numbers and the source of information in order to:
- Get started with one of the three available Packages (Starter, Developer or Distribution Packages)
- Get started with the board
- Find the associated embedded software distributions
- Download source code
- Build an embedded software
Board part number | Jump to |
---|---|
STM32MP157C-EV1 Evaluation board |
STM32MP15 Evaluation boards - getting started, including software download |
STM32MP157X-DKX Discovery kit |
STM32MP15 Discovery kits - getting started, including software download |
10 STM32MPU Embedded Software distribution detailed release notes[edit source]
The table below lists the software packages available in the STM32MPU Embedded Software distribution, and provides the corresponding release notes.
The release notes provide more information and details about the features and content of each package.
The release notes does not explain how to get software. For that, refer chapter How to get the software and start with this release
Firmware | Release note | Version |
OpenSTLinux Distribution | STM32MP15 OpenSTLinux release note - v1.1.0 | openstlinux-4.19-thud-mp1-19-10-09 |
STM32Cube MPU Package | STM32CubeMP1 Package release note - v1.1.0 | STM32CubeMP1-v1.1.0 |
STM32 MPU Distribution for Android | STM32MP15 distribution for Android release note - v1.0.0 | st-android-9.0.0-2019-09-27 |
11 Referenced tools release notes[edit source]
The table below lists the available tools, and provides links to the respective release notes.
Each release note provides information on how to install and use the corresponding tool.
The set of tools to be downloaded depends on the Package to be used (double check Which Package better suits your needs article to find more information on each Package).
Tools | Release notes | Host PC | Which Package may need the tool ? | |||
Linux version | Windows version | Starter Package | Developer Package | Distribution Package | ||
STM32CubeIDE | STM32CubeIDE_release_note | 1.1.0 | 1.1.0 | ☐ | ☑ | ☐ |
STM32CubeMX | STM32CubeMX release note | from 5.4 | from 5.4 | ☐ | ☑ | ☑ |
STM32CubeProg | STM32CubeProgrammer release note | 2.2.0 | 2.2.0 | ☑ | ☐ | ☑ |
Keygen | KeyGen release note | 1.0.0 | 1.0.0 | ☑ | ☑ | ☑ |
Signing tool | Tool release note | 1.0.0 | 1.0.0 | ☑ | ☑ | ☑ |
12 Change log[edit source]
See detailed release notes for more information STM32MPU Embedded Software distribution detailed release notes and Referenced tools release notes .
13 References[edit source]
- ↑ 1.0 1.1 The part numbers are specified in STM32MP15 microprocessor part numbers