Hardware convenience library
[qemu/mini2440.git] / gdbstub.h
blob5740041c76c260a573bd43ae1e0f24fb04e44520
1 #ifndef GDBSTUB_H
2 #define GDBSTUB_H
4 #define DEFAULT_GDBSTUB_PORT "1234"
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
13 typedef void (*gdb_syscall_complete_cb)(CPUState *env,
14 target_ulong ret, target_ulong err);
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);
35 #endif