SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world.
And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download two short videos (registration required) highlighting:

System Workbench for STM32

How to add header on beginning of FW for bootloader use


Hi Nick,

The main advantage of STM32CubeMX being to generate the initialization code for your board, something you don’t need as you already have working code, I think the best would be to create a new project using SW4STM32 and copy your code in the src directory (either directly or in subdirectories, as you already structured it), with include files in inc.

Regarding the ST-provided firmware, you have two options:

  1. keep it in your source code
    • create a project without firmware
    • import all the code you compiled with Keil, keeping the directory structure
  2. have it imported by SW4STM32
    • only copy your code, not the firmware from ST
    • you may even import the firmware in a separate static library so thatyou can upgrade it simply if needed.
    • note that some third-party middlewares, like FreeRTOS, will be always included within th ecreated project, as they depend on application-specific configuration files

Hope this helps,

Bernard (Ac6)