diff options
author | Robin Getz <robin.getz@analog.com> | 2007-07-24 23:03:28 -0400 |
---|---|---|
committer | Bryan Wu <bryan.wu@analog.com> | 2007-07-24 23:03:28 -0400 |
commit | 518039bc24cbb9ce34665814fe120eac50bedd9a (patch) | |
tree | 6b089a05025ae224d6636b6dc9d95e7c9e4677eb /arch/blackfin/kernel/irqchip.c | |
parent | f16295e7e7f2a2a15876f570f10d6dc8f1f36ab8 (diff) |
Blackfin arch: Add ability to expend the hardware trace buffer
Add ability to expend the hardware trace buffer via a configurable
software buffer - so you can have lots of history when a crash occurs.
The interesting way we do printk in the traps.c confusese the checking
script
Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Diffstat (limited to 'arch/blackfin/kernel/irqchip.c')
-rw-r--r-- | arch/blackfin/kernel/irqchip.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c index 1fc001c7abda..462ae41144c7 100644 --- a/arch/blackfin/kernel/irqchip.c +++ b/arch/blackfin/kernel/irqchip.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/kallsyms.h> | 34 | #include <linux/kallsyms.h> |
35 | #include <linux/interrupt.h> | 35 | #include <linux/interrupt.h> |
36 | #include <linux/irq.h> | 36 | #include <linux/irq.h> |
37 | #include <asm/trace.h> | ||
37 | 38 | ||
38 | static unsigned long irq_err_count; | 39 | static unsigned long irq_err_count; |
39 | static spinlock_t irq_controller_lock; | 40 | static spinlock_t irq_controller_lock; |
@@ -144,4 +145,12 @@ void __init init_IRQ(void) | |||
144 | } | 145 | } |
145 | 146 | ||
146 | init_arch_irq(); | 147 | init_arch_irq(); |
148 | |||
149 | #ifdef CONFIG_DEBUG_BFIN_HWTRACE_EXPAND | ||
150 | /* Now that evt_ivhw is set up, turn this on */ | ||
151 | trace_buff_offset = 0; | ||
152 | bfin_write_TBUFCTL(BFIN_TRACE_ON); | ||
153 | printk(KERN_INFO "Hardware Trace expanded to %ik\n", | ||
154 | 1 << CONFIG_DEBUG_BFIN_HWTRACE_EXPAND_LEN); | ||
155 | #endif | ||
147 | } | 156 | } |