cancel
Showing results for 
Search instead for 
Did you mean: 

Can't boot STM32MP1 custom board because of PANIC at PC : 0x2ffdaa77

CharlesBlanchard
Associate III

Hi,

I'm trying to bring up a custom board based on STM32MP151C MPU. The design is widely taken from the devkit.

I'm booting from SDCARD and bootpins are set accordingly (b101).

One thing that is changing is the I2C4 pins for PMIC interface (still on I2C4 but different pins). So we changed the device tree of TF-A for that.

Concerning the HSE, we keep the same configuration (external crystal, 24MHz).

From this post;

https://community.st.com/s/question/0D53W000005qRjZSAU/cannot-boot-up-custom-board-which-based-on-stm32mp157cdk2-only-get-message-from-uart-panic-at-pc-0x2ffdc323-exception-mode0x00000016-at-0x2ffda000?t=1652971830558

We confirmed that I2C and HSE should be configured correctly.

We have tried to check the configuration for I2C and clocks. We didn't see anything wrong for now.

In our case, PC is at a different address (0x2ffdaa77). Does it mean something different?

Also, I don't have an exception as the post explain (Exception mode=0x00000016 at: 0x2ffda000), only the PANIC line.

Do you have any leads to unlock the situation ?

You maybe have some intuitions on the problems (either it is hardware or firmware for exemple).

Best regards,

Charles

1 ACCEPTED SOLUTION

Accepted Solutions
PatrickF
ST Employee

Hi @Community member​ 

maybe worth to start with an uBoot SPL to do DDR tests with STM32CubeMx.

See also https://community.st.com/s/article/FAQ-STM32MP1-Bring-up-procedure

Some clues:

Try booting without SD-Card and get BootROM trace (https://wiki.st.com/stm32mpu/wiki/STM32MP15_ROM_trace_analyzer ). This might help to see if HSE bypass and frequency are correctly autodetected.

Did you correctly defined the core frequency to 650MHz in the DT?

Did you try loading TF-A-serial with CubeProgrammer to see if different console traces occur ?

Maybe share detailed log and DT.

Regards.

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.

View solution in original post

3 REPLIES 3
PatrickF
ST Employee

Hi @Community member​ 

maybe worth to start with an uBoot SPL to do DDR tests with STM32CubeMx.

See also https://community.st.com/s/article/FAQ-STM32MP1-Bring-up-procedure

Some clues:

Try booting without SD-Card and get BootROM trace (https://wiki.st.com/stm32mpu/wiki/STM32MP15_ROM_trace_analyzer ). This might help to see if HSE bypass and frequency are correctly autodetected.

Did you correctly defined the core frequency to 650MHz in the DT?

Did you try loading TF-A-serial with CubeProgrammer to see if different console traces occur ?

Maybe share detailed log and DT.

Regards.

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.
CharlesBlanchard
Associate III

Thanks Patrick for your answer.

I think the SDCard image was not generated correctly. After some tries and rebuilding it worked.

Now the system is running until u-boot ! :D

Best regards,

Charles

Nice to see you are now opening the way for a complete Linux boot !

Regards.

In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'

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.