--- zzzz-none-000/linux-2.6.39.4/kernel/panic.c 2011-08-03 19:43:28.000000000 +0000 +++ puma6-atom-6490-729/linux-2.6.39.4/kernel/panic.c 2021-11-10 13:38:18.000000000 +0000 @@ -23,17 +23,26 @@ #include #include #include +#include +#include +#include #define PANIC_TIMER_STEP 100 #define PANIC_BLINK_SPD 18 +#if defined(CONFIG_AVM_WATCHDOG) +#include +#endif -int panic_on_oops; +#ifdef CONFIG_TFFS_PANIC_LOG +#include +#endif /*--- #ifdef CONFIG_TFFS_PANIC_LOG ---*/ +int panic_on_oops = 1; static unsigned long tainted_mask; static int pause_on_oops; static int pause_on_oops_flag; static DEFINE_SPINLOCK(pause_on_oops_lock); -int panic_timeout; +int panic_timeout = 5; EXPORT_SYMBOL_GPL(panic_timeout); ATOMIC_NOTIFIER_HEAD(panic_notifier_list); @@ -64,6 +73,12 @@ long i, i_next = 0; int state = 0; +#if defined(CONFIG_AVM_WATCHDOG) + AVM_WATCHDOG_emergency_retrigger(); +#if defined(CONFIG_VR9) || defined(CONFIG_AR10) + *(volatile unsigned int *)(0xbf101000 + 0xF4) = (1<<4); /*--- disable WATCHDOG-preWarning ---*/ +#endif /*--- #if defined(CONFIG_VR9) ---*/ +#endif /* * It's possible to come here directly from a panic-assertion and * not have preempt disabled. Some functions called from here want @@ -79,6 +94,7 @@ printk(KERN_EMERG "Kernel panic - not syncing: %s\n",buf); #ifdef CONFIG_DEBUG_BUGVERBOSE dump_stack(); + dump_event_node_stats(NULL); #endif /*