STM32MP15 ECO 5.0.0 Kernel boot Unhandled fault: imprecise external abort (0x1c06) [cut here]
- October 11, 2023
- 4 replies
- 5996 views
ECO sources used (not git). Custom board based on STM32MP157AAA3.
Both when using OPTEE in DDR and SRAM this issue occurs.
The kernel reports an "cut here" and then reports:
[ 0.273935] Unhandled fault: imprecise external abort (0x1c06) at 0x97638f7a
This seems to be a memory access violation. The 0x9 memory location seems to be in I/O space but information is hard to find. One slide from ST refers to 0x9000000-0x9FFFFFF as "STM". Why would the kernel attempt to access this space. More even curious, why for does this happens just after or at the UART ?

Log attached.
0.236358] Serial: AMBA PL011 UART driver
[ 0.243557] stm32-pm-domain pm_domain: domain core-ret-power-domain registered
[ 0.250937] stm32-pm-domain pm_domain: subdomain core-power-domain registered
[ 0.258122] stm32-pm-domain pm_domain: domains probed
[ 0.270843] 8<--- cut here ---
[ 0.273935] Unhandled fault: imprecise external abort (0x1c06) at 0x97638f7a
[ 0.281026] [97638f7a] *pgd=00000000
[ 0.284637] Internal error: : 1c06 [#1] PREEMPT SMP ARM
According to this article it could be related running tow cores. To prevent this, modified the extlinux.config to only run one core at boot time. In the log can be seen that only one CPU is enabled. Though the error still occurs.
This link mentions the same error but it's quite some time ago: https://bootlin.com/blog/building-a-linux-system-for-the-stm32mp1-implementing-factory-flashing/
Currently mainline kernels don’t work when using TFA because some of the clocks are only accessible from the secure world. The ST kernel has patches for this but they haven’t made it into mainline yet.
This manifests itself as a hang after booting kernel but if you enable debug_ll and early printk you can see this:
[ 0.000000] 8<— cut here —
[ 0.000000] Unhandled fault: imprecise external abort (0x1c06) at 0xd3eab612
when googling, found this link ,https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwjdrrmAoe6BAxVD-WEKHUGVAsAQFnoECAwQAQ&url=https%3A%2F%2Fcommunity.st.com%2Fysqtg83639%2Fattachments%2Fysqtg83639%2Fstm32-mpu-products-forum%2F10225%2F1%2Fbootlog.txt&usg=AOvVaw3u2ssj7Sv1iDmDjb-H3TZx&opi=89978449 on Sep 19th from user ysqtg83639 , with the same error, but can't find the post.
The error refers to a Register r3 information: NULL pointer, is this a bug in the ST code ?

