cancel
Showing results for 
Search instead for 
Did you mean: 

I would like to run linux on cortex-M MCU in Stm32mp157-EV but i don't know what's wrong?

Fheid.1
Associate III

Hi

dear engineers,

i can run linux on stm32f429 mcu without any problem, but it failed on Cortex-M MCU in stm32mp157 board.

After many hours i realize:

error happens in below function

void __meminit __free_pages_bootmem...

Anyone else had a similar problem? how you resolved it?

Shall i change any register address in kernel? (i think every thing is the same in cortex-M4 and stm32f429).

Best regards

5 REPLIES 5
Olivier GALLIEN
ST Employee

Hi @Fheid.1​ 

I supposed you mention STM32F429IDISCO for F4 platform supporting Linux ?

It has 2MB flash while you only have a budget of 384KB of MCU RAM in STM32MP1.

Did you shape your linux system to fit in this space ?

Olivier

Olivier GALLIEN
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.
Fheid.1
Associate III

Hi dear @Community member​ 

Thanks for your attention:bouquet:

Yes you supposed right, I know running linux on cortex M is unusual project.

I have taken the first steps of the project and I hope to do it successfully with your help.

You know better than me the electronic circuit and the structure of stm32mp157,

 I use 64 kB and three 128 kB memory in addition to DDR3 for running linux. It is so complex but I can explain it step by step if you want.

After too many ties i can access the attachment picture, Could you understand my recent status using sending image?

Could you help me?

Kind regards

Olivier GALLIEN
ST Employee

Hi @Fheid.1​ 

>> I use 64 kB and three 128 kB memory in addition to DDR3 for running linux

Are you aware that on STM32MP15x, Cortex-M4 is not intended to access DDR content. Cortex-M4 has no cache and asynchronous path to AXI bus has not been optimized for that, so Cortex-M4 performance will be very largely impacted.

I also presume you are running "engineering" mode where DDR3 is not available, since not powered nor configured.

Olivier

Olivier GALLIEN
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.
Fheid.1
Associate III

Hi Mr @Community member​ 

Thank you indeed.

I am running "production" mode and accessing DDR3 is available for me.

Im not worried a bout performance or running speed.

according to RM0436 datasheet i can access to DDR content without any problem.

i have done the following settings on Cortex-A and Cortex-M. please check attached file...

if it is hardly readable tell me to send each of them separately.

0693W000000XGVfQAO.jpg

i mentioned it:backhand_index_pointing_down: :

"error happens in below function

void __meminit __free_pages_bootmem..."

i dont know any thing a bout mentioned function. Does that function error occur in a particular situation?