[MIPS] kgdb: add arch support for the kernel's kgdb core
The new kgdb architecture specific handler registers and unregisters dynamically for exceptions depending on when you configure a kgdb I/O driver. Aside from initializing the exceptions earlier in the boot process, kgdb should have no impact on a device when it is compiled in so long as an I/O module is not configured for use. There have been quite a number of contributors during the existence of this patch (see arch/mips/kernel/kgdb.c). Most recently Jason re-wrote the mips kgdb logic to use the die notification handlers. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
8d60a903d9
commit
8854700115
@@ -21,11 +21,16 @@
|
||||
#include <linux/sched.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/kallsyms.h>
|
||||
#include <linux/kgdb.h>
|
||||
|
||||
#include <asm/atomic.h>
|
||||
#include <asm/system.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
#ifdef CONFIG_KGDB
|
||||
int kgdb_early_setup;
|
||||
#endif
|
||||
|
||||
static unsigned long irq_map[NR_IRQS / BITS_PER_LONG];
|
||||
|
||||
int allocate_irqno(void)
|
||||
@@ -130,8 +135,18 @@ void __init init_IRQ(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
#ifdef CONFIG_KGDB
|
||||
if (kgdb_early_setup)
|
||||
return;
|
||||
#endif
|
||||
|
||||
for (i = 0; i < NR_IRQS; i++)
|
||||
set_irq_noprobe(i);
|
||||
|
||||
arch_init_irq();
|
||||
|
||||
#ifdef CONFIG_KGDB
|
||||
if (!kgdb_early_setup)
|
||||
kgdb_early_setup = 1;
|
||||
#endif
|
||||
}
|
||||
|
Reference in New Issue
Block a user