diff --git a/arch/arm/lib/interrupts_64.c b/arch/arm/lib/interrupts_64.c index f3194fd94e..0781034b03 100644 --- a/arch/arm/lib/interrupts_64.c +++ b/arch/arm/lib/interrupts_64.c @@ -206,6 +206,14 @@ void show_regs(struct pt_regs *regs) printf("x%-2d: %016lx x%-2d: %016lx\n", i, regs->regs[i], i+1, regs->regs[i+1]); printf("\n"); + +#ifdef CONFIG_ROCKCHIP_CRASH_DUMP + iomem_show_by_compatible("-cru", 0, 0x400); + iomem_show_by_compatible("-pmucru", 0, 0x400); + iomem_show_by_compatible("-grf", 0, 0x400); + iomem_show_by_compatible("-pmugrf", 0, 0x400); + /* tobe add here ... */ +#endif } #else diff --git a/arch/arm/mach-rockchip/Kconfig b/arch/arm/mach-rockchip/Kconfig index 839c2b18f6..fa8efc7f16 100644 --- a/arch/arm/mach-rockchip/Kconfig +++ b/arch/arm/mach-rockchip/Kconfig @@ -432,6 +432,12 @@ config ROCKCHIP_DEBUGGER and dump pt_regs when the timeout event trigger. This helps us to know cpu state when system hang. +config ROCKCHIP_CRASH_DUMP + bool "Rockchip crash dump registers" + help + This enable dump registers when system crash, the registers you would like + to dump can be added in show_regs(). + config GICV2 bool "ARM GICv2"