u boot 32bit - MarekBykowski/readme GitHub Wiki
Add symbols and tell the debugger where the sources are
add-symbol-file /home/ubuntu/yocto/poky/arm32-aem-build/tmp/work/fvp_base_arm32-poky-linux-gnueabi/u-boot/1_2022.04-r0/build/u-boot
directory /home/ubuntu/yocto/poky/arm-aem-build/tmp/work/fvp_base-poky-linux/u-boot/2024.01/git
If u-boot relocated add relocation offset to the symbols. Read it from the console.
add-symbol-file /home/ubuntu/yocto/poky/arm32-aem-build/tmp/work/fvp_base_arm32-poky-linux-gnueabi/u-boot/1_2022.04-r0/build/u-boot 0x76fb4000
Fix mmu translations in u-boot
hbreak -p cache-cp15.c:mmu_enabled
- First, find out how to write/read on the c15 system/control registers. Look up for
VMSA CP15 c15 register summary, IMPLEMENTATION DEFINED registers
- For
short-descriptor translation
,CONFIG_CPU_V7A
inu-boot
,c2 0 c0 2 TTBCR 32-bit Translation Table Base Control Register
decides if ttbr0 or ttbr1 in use. Fromarmds
print /x $ttbcr
From C
asm volatile("mrc p15, 0, %0, c2, c0, 2" : "=r" (ttbcr) : : "memory");
From armds
check if system control reg.M
is set print /t $sctlr
print /x $HTTBR
print /x $HTCR
print /x $HSCTLR