Blame view

include/asm-ppc/kgdb.h 1.72 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  /*
   * kgdb.h: Defines and declarations for serial line source level
   *         remote debugging of the Linux kernel using gdb.
   *
   * PPC Mods (C) 1998 Michael Tesch (tesch@cs.wisc.edu)
   *
   * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
   */
  #ifdef __KERNEL__
  #ifndef _PPC_KGDB_H
  #define _PPC_KGDB_H
  
  #ifndef __ASSEMBLY__
  
  /* Things specific to the gen550 backend. */
  struct uart_port;
  
  extern void gen550_progress(char *, unsigned short);
  extern void gen550_kgdb_map_scc(void);
  extern void gen550_init(int, struct uart_port *);
  
  /* Things specific to the pmac backend. */
  extern void zs_kgdb_hook(int tty_num);
  
  /* To init the kgdb engine. (called by serial hook)*/
  extern void set_debug_traps(void);
  
  /* To enter the debugger explicitly. */
  extern void breakpoint(void);
  
  /* For taking exceptions
   * these are defined in traps.c
   */
7b007de8a   Benjamin Herrenschmidt   [PATCH] ppc: Fix ...
34
  extern int (*debugger)(struct pt_regs *regs);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  extern int (*debugger_bpt)(struct pt_regs *regs);
  extern int (*debugger_sstep)(struct pt_regs *regs);
  extern int (*debugger_iabr_match)(struct pt_regs *regs);
  extern int (*debugger_dabr_match)(struct pt_regs *regs);
  extern void (*debugger_fault_handler)(struct pt_regs *regs);
  
  /* What we bring to the party */
  int kgdb_bpt(struct pt_regs *regs);
  int kgdb_sstep(struct pt_regs *regs);
  void kgdb(struct pt_regs *regs);
  int kgdb_iabr_match(struct pt_regs *regs);
  int kgdb_dabr_match(struct pt_regs *regs);
  
  /*
   * external low-level support routines (ie macserial.c)
   */
  extern void kgdb_interruptible(int); /* control interrupts from serial */
  extern void putDebugChar(char);   /* write a single character      */
  extern char getDebugChar(void);   /* read and return a single char */
  
  #endif /* !(__ASSEMBLY__) */
  #endif /* !(_PPC_KGDB_H) */
  #endif /* __KERNEL__ */