cancel
Showing results for 
Search instead for 
Did you mean: 

I got PANIC at PC : 0x2ffec98b - Why?

DMårt
Lead

I made a custom board with the processor STM32MP151AAC3 and own firmwire https://github.com/DanielMartensson/STM32-Computer/tree/main/STM32CubeIDE/STM32-Computer-Firmware . I have compiled the TF-A by using STM32CubeIDE. It was some bugs with the TF-A configuration, but it seems I fixed them in this thread: 

Solved: BUG: Label or path X_pins_y not found - Compiling ... - STMicroelectronics Community

 

PANIC at PC : 0x2ffec98b

Exception mode=0x00000016 at: 0x2ffec98b

 

I have tried to flash it with firmware of STM32MP157 with another I2C4 pin configuration. And it failed. 

 

NOTICE:  CPU: STM32MP151AAC Rev.Z
NOTICE:  Model: STMicroelectronics STM32MP157A eval daughter on eval mother
ERROR:   I2C device not ready
PANIC at PC : 0x2fff101b

Exception mode=0x00000016 at: 0x2fff101b

Trying the Flashout Delete All DK1 STM32MP157a.
Exception mode=0x00000016 at: 0x2fff101b

NOTICE:  CPU: STM32MP151AAC Rev.Z
NOTICE:  Model: STMicroelectronics STM32MP157A-DK1 Discovery Board
ERROR:   I2C device not ready
PANIC at PC : 0x2fff101b

 

That means the following:

  1. The HSE clock is working
  2. The HSE clock is soldered correctly
  3. The I2C is working, even if it was not ready for communication (wrong pins)

Question:

This new error must lead to an answer. What can it be?

 

 

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer
33 REPLIES 33

@rgruberski 

If you're flashing the emmc with the USB OTG, there is a hack you can do to avoid the time out

https://community.st.com/t5/stm32-mpus/faq-stm32mp1-stm32cubeprogrammer-usb-reconnect-error-at-stm32mp1/ta-p/49263

 

How does your UART look like when you're reflashing?

 

What is your BOOT pin configuration when you're flashing?

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

@DMårtThank you!

How does your UART look like when you're reflashing? Please check the attached previous and now file. It's a complete UART log.

What is your BOOT pin configuration when you're flashing? All off (0)

@rgruberski 

The .log file is corrupted. I cannot read it.

ꭀ?⢒?鿈??ꬕ?⯓?⥌?ⱈ?⹋??椐?꬈?狙?

 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

Oh, I don't know why. Please check the attached file.

@rgruberski 

ERROR:   nvmem node board_id not found

Det the board ID inside the dts files. See how I did that inside my STM32-Computer repository.

 

Begin with resolve ALL errors, deffered, and "missing" etc.

 

It will help. 

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

@DMårt Thank you! I have fixed the above error. I can't find errors, deferred, or missing elements in the log file. Have you seen any element I should fix in the log file?

@rgruberski 

Are you flashing via USB OTG or SD-card ?

 

How does your STPMIC look like in the dts file?

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

@DMårt I am flashing via USB OTG on a USB-C connector. This design doesn't include an SD card.

@rgruberski 

F/TC:0 0 probe_driver_node:436 Probing stm32-tamp on node tamp@5c00a000
D/TC:0 0 probe_driver_node:449 element: stm32-tamp on node tamp@5c00a000 deferred 2 time(s)
F/TC:0 0 probe_driver_node:436 Probing stm32-cpu-opp on node cpu0-opp-table
D/TC:0 0 probe_driver_node:449 element: stm32-cpu-opp on node cpu0-opp-table deferred 3 time(s)
D/TC:0 0 process_probe_list:590 Unresolved dependencies after 3 rounds, 3 deferred
D/TC:0 0 probe_dt_drivers_early:774 Deferred drivers probing
D/TC:0 0 print_probe_list:397 Probe list: 2 elements
D/TC:0 0 print_probe_list:399 |- Driver stm32-tamp probes on node tamp@5c00a000
D/TC:0 0 print_probe_list:399 |- Driver stm32-cpu-opp probes on node cpu0-opp-table
D/TC:0 0 print_probe_list:403 `- Probe list end
D/TC:0 0 print_probe_list:409 Failed list: 0 elements
D/TC:0 0 print_probe_list:414 `- Failed list end

 

Can you look in the stm32mp151.dtsi file of Optee what "@5c00a000" is for device?

 

Arch/arm/dts is the file located.

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer

@rgruberski 

Then we have the answer!

You need to configure the special hack for USB OTG. Described inside the URL link.

STM32MP151AAC3 custom board with STM32-OS as operating system: https://github.com/DanielMartensson/STM32-Computer