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 (registration required) various documents highlighting:

System Workbench for STM32

How to add FatFs to example project

I would like to add FatFs to an example project of STM32Cube_FW_F4 (LCD_DSI_CmdMode_SingleBuffer). I don’t know how to add header file folder or source file into example project. Got many error messages. Here are some questions:
1. How to add the path of FatFs header files in the “Includes”? No response when right click..
2. How and where should I add the FatFs source files? For now, I copy source file and paste it under “User” folder.
3. I got the error “Please select first the Board used in your application (in boardname_eval.h file)” which is from “ffconf.h”. Where should I define “USE_STM32469I_DISCOVER”? I tried to define it in the ffconf.h or main.h, but I still got the same error message.
#ifdef USE_STM324x9I_EVAL
#include “stm324x9i_eval_sd.h”
#elif USE_STM324xG_EVAL
#include “stm324xg_eval_sd.h”
#elif USE_STM32446E_EVAL
#include “stm32446e_eval_sd.h”
#elif USE_STM32469I_EVAL
#include “stm32469i_eval_sd.h”
#include “stm32469i_discovery_sd.h”
#error “Please select first the Board used in your application (in boardname_eval.h file)”
4. ‘SRAM_DEVICE_ADDR’ undeclared (first use in this function). I already add #include “stm32469i_discovery_sdram.h”, but I still got this message. How should I do?

I’ve done lots of try and error. Any suggestions would be appreciated.


Hi Jimmy,

Usually you should define this kind of symbol in the project properties (C/C++ General >> Includes and Symbols) but it should be defined in the example project provided in the firmware package.

The FATfs source files should be included either, as you’ve done, by copying them in your project or, what is more in line with how demo projects are created, by creating a linked directory to the source directory; you should also add the include files in your include search path in the same dialog you used to define USE_STM32469I_DISCOVERY anove.

Another solution, probably cleaner, is to create a new project using SW4STM32, selecting the various firmwares you need (FATfs here) and load the firmware “As sources in the project”; then you can copy the application source code from the demo project in your new project and add initialization code to include FATfs.

Bernard (Ac6)