mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
riscv: allow to enable SHOW_REGS in main U-Boot only
To minimize SPL size it is reasonable to disable SHOW_REGS. For main U-Boot the size restrictions are much more relaxed. * Provide separate Kconfig symbols for SPL and main U-Boot. * Add a help text. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
This commit is contained in:
committed by
Leo Yu-Chi Liang
parent
aeff27c0aa
commit
73e73f04b7
@@ -439,6 +439,18 @@ config AVAILABLE_HARTS
|
||||
|
||||
config SHOW_REGS
|
||||
bool "Show registers on unhandled exception"
|
||||
help
|
||||
By default only the program counter and the return address register
|
||||
are shown in crash dumps. Enable this symbol to show all registers in
|
||||
main U-Boot.
|
||||
|
||||
config SPL_SHOW_REGS
|
||||
bool "In SPL show registers on unhandled exception"
|
||||
depends on SPL
|
||||
help
|
||||
By default only the program counter and the return address register
|
||||
are shown in crash dumps. Enable this symbol to show all registers in
|
||||
SPL.
|
||||
|
||||
config RISCV_PRIV_1_9
|
||||
bool "Use version 1.9 of the RISC-V priviledged specification"
|
||||
|
||||
@@ -34,9 +34,8 @@ static void show_efi_loaded_images(uintptr_t epc)
|
||||
efi_print_image_infos((void *)epc);
|
||||
}
|
||||
|
||||
static void show_regs(struct pt_regs *regs)
|
||||
static void __maybe_unused show_regs(struct pt_regs *regs)
|
||||
{
|
||||
#ifdef CONFIG_SHOW_REGS
|
||||
printf("\nSP: " REG_FMT " GP: " REG_FMT " TP: " REG_FMT "\n",
|
||||
regs->sp, regs->gp, regs->tp);
|
||||
printf("T0: " REG_FMT " T1: " REG_FMT " T2: " REG_FMT "\n",
|
||||
@@ -57,7 +56,6 @@ static void show_regs(struct pt_regs *regs)
|
||||
regs->s10, regs->s11, regs->t3);
|
||||
printf("T4: " REG_FMT " T5: " REG_FMT " T6: " REG_FMT "\n",
|
||||
regs->t4, regs->t5, regs->t6);
|
||||
#endif
|
||||
}
|
||||
|
||||
static void __maybe_unused show_backtrace(struct pt_regs *regs)
|
||||
@@ -157,7 +155,8 @@ static void _exit_trap(ulong code, ulong epc, ulong tval, struct pt_regs *regs)
|
||||
printf("EPC: " REG_FMT " RA: " REG_FMT " reloc adjusted\n",
|
||||
epc - gd->reloc_off, regs->ra - gd->reloc_off);
|
||||
|
||||
show_regs(regs);
|
||||
if (CONFIG_IS_ENABLED(SHOW_REGS))
|
||||
show_regs(regs);
|
||||
if (CONFIG_IS_ENABLED(FRAMEPOINTER))
|
||||
show_backtrace(regs);
|
||||
show_code(epc);
|
||||
|
||||
Reference in New Issue
Block a user