make oldconfig will rebuild these...
[linux-2.4.21-pre4.git] / include / asm-ppc / kgdb.h
1 /*
2  * BK Id: SCCS/s.kgdb.h 1.8 11/16/01 16:08:22 dgibson
3  */
4 /*
5  * kgdb.h: Defines and declarations for serial line source level
6  *         remote debugging of the Linux kernel using gdb.
7  *
8  * PPC Mods (C) 1998 Michael Tesch (tesch@cs.wisc.edu)
9  *
10  * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
11  */
12 #ifdef __KERNEL__
13 #ifndef _PPC_KGDB_H
14 #define _PPC_KGDB_H
15
16 #ifndef __ASSEMBLY__
17 /* To initialize the serial, first thing called */
18 extern void zs_kgdb_hook(int tty_num);
19 /* To init the kgdb engine. (called by serial hook)*/
20 extern void set_debug_traps(void);
21
22 /* To enter the debugger explicitly. */
23 extern void breakpoint(void);
24
25 /* For taking exceptions
26  * these are defined in traps.c
27  */
28 extern void (*debugger)(struct pt_regs *regs);
29 extern int (*debugger_bpt)(struct pt_regs *regs);
30 extern int (*debugger_sstep)(struct pt_regs *regs);
31 extern int (*debugger_iabr_match)(struct pt_regs *regs);
32 extern int (*debugger_dabr_match)(struct pt_regs *regs);
33 extern void (*debugger_fault_handler)(struct pt_regs *regs);
34
35 /* What we bring to the party */
36 int kgdb_bpt(struct pt_regs *regs);
37 int kgdb_sstep(struct pt_regs *regs);
38 void kgdb(struct pt_regs *regs);
39 int kgdb_iabr_match(struct pt_regs *regs);
40 int kgdb_dabr_match(struct pt_regs *regs);
41
42 /*
43  * external low-level support routines (ie macserial.c)
44  */
45 extern void kgdb_interruptible(int); /* control interrupts from serial */
46 extern void putDebugChar(char);   /* write a single character      */
47 extern char getDebugChar(void);   /* read and return a single char */
48
49 #endif /* !(__ASSEMBLY__) */
50 #endif /* !(_PPC_KGDB_H) */
51 #endif /* __KERNEL__ */