Skip to main content
Faust
Associate II
Feb 20, 2023 10:59 AM UTC
Solved

Is it possible to assign DMA1 and DMA2 to Cortex M4 core in STM32MP1?

There seems to be an option to change assignment in STM32CubeIDE (in .ioc file), but DMA1 is assigned to A7 and DMA2 is assigned to M4 and the another core is always greyed out. Is it possible to unlock those settings?

This topic has been closed for replies.
Olivier GALLIEN
Olivier GALLIENBest answer
ST Technical Moderator
Mar 9, 2023 3:31 PM UTC

Hi @Faust​ ,

Indeed CubeMX integrate the restriction to force at least one DMA instance on Linux side.

It's very unusual to not benefit of DMA performance and service on Linux side for any peripherals.

If you assume consequence to not have DMA on Linux side and allocate both on M4 side then you can do it by editing the DTS.

Olivier

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

2 replies

Olivier GALLIEN
Olivier GALLIENBest answer
ST Technical Moderator
Mar 9, 2023 3:31 PM UTC

Hi @Faust​ ,

Indeed CubeMX integrate the restriction to force at least one DMA instance on Linux side.

It's very unusual to not benefit of DMA performance and service on Linux side for any peripherals.

If you assume consequence to not have DMA on Linux side and allocate both on M4 side then you can do it by editing the DTS.

Olivier

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
Faust
FaustAuthor
Associate II
Mar 9, 2023 3:37 PM UTC

Hello Olivier,

thank you for your answer.

The DMA distribution wasn't clear for me. I thought that MDMA is all Linux side needs.

I'll leave it as it is :)

Thanks once again.