Home | History | Annotate | Download | only in qemu
      1 #ifndef GDBSTUB_H
      2 #define GDBSTUB_H
      3 
      4 #define DEFAULT_GDBSTUB_PORT "1234"
      5 
      6 /* GDB breakpoint/watchpoint types */
      7 #define GDB_BREAKPOINT_SW        0
      8 #define GDB_BREAKPOINT_HW        1
      9 #define GDB_WATCHPOINT_WRITE     2
     10 #define GDB_WATCHPOINT_READ      3
     11 #define GDB_WATCHPOINT_ACCESS    4
     12 
     13 typedef void (*gdb_syscall_complete_cb)(CPUState *env,
     14                                         target_ulong ret, target_ulong err);
     15 
     16 void gdb_do_syscall(gdb_syscall_complete_cb cb, const char *fmt, ...);
     17 int use_gdb_syscalls(void);
     18 void gdb_set_stop_cpu(CPUState *env);
     19 #ifdef CONFIG_USER_ONLY
     20 int gdb_queuesig (void);
     21 int gdb_handlesig (CPUState *, int);
     22 void gdb_exit(CPUState *, int);
     23 void gdb_signalled(CPUState *, int);
     24 int gdbserver_start(int);
     25 void gdbserver_fork(CPUState *);
     26 #else
     27 int gdbserver_start(const char *port);
     28 #endif
     29 /* Get or set a register.  Returns the size of the register.  */
     30 typedef int (*gdb_reg_cb)(CPUState *env, uint8_t *buf, int reg);
     31 void gdb_register_coprocessor(CPUState *env,
     32                               gdb_reg_cb get_reg, gdb_reg_cb set_reg,
     33                               int num_regs, const char *xml, int g_pos);
     34 
     35 #endif
     36