diff --git a/firmware/export/system.h b/firmware/export/system.h index f26b3d7f56..ebeef9c004 100644 --- a/firmware/export/system.h +++ b/firmware/export/system.h @@ -253,6 +253,11 @@ static inline void cpu_boost_unlock(void) #define MIN_STACK_ALIGN 8 #endif +/* Define this if target has support for generating backtraces */ +#ifdef CPU_ARM + #define HAVE_RB_BACKTRACE +#endif + #ifndef MIN_STACK_ALIGN #define MIN_STACK_ALIGN (sizeof (uintptr_t)) #endif diff --git a/firmware/panic.c b/firmware/panic.c index 7e7e43d609..90e727d5e4 100644 --- a/firmware/panic.c +++ b/firmware/panic.c @@ -114,7 +114,7 @@ void panicf( const char *fmt, ...) } } -#if defined(CPU_ARM) +#if defined(HAVE_RB_BACKTRACE) rb_backtrace(pc, sp, &y); #endif #ifdef ROCKBOX_HAS_LOGF