Changeset View
Changeset View
Standalone View
Standalone View
sys/gdb/gdb.h
Show First 20 Lines • Show All 49 Lines • ▼ Show 20 Lines | struct gdb_dbgport { | ||||
int gdb_dbfeatures; | int gdb_dbfeatures; | ||||
}; | }; | ||||
#define GDB_DBGP_FEAT_WANTTERM 0x1 /* Want gdb_term() invocation when | #define GDB_DBGP_FEAT_WANTTERM 0x1 /* Want gdb_term() invocation when | ||||
leaving GDB. gdb_term has been | leaving GDB. gdb_term has been | ||||
deadcode and never invoked for so | deadcode and never invoked for so | ||||
long I don't want to just blindly | long I don't want to just blindly | ||||
start invoking it without opt-in. */ | start invoking it without opt-in. */ | ||||
#define GDB_DBGP_FEAT_RELIABLE 0x2 /* The debugport promises it is a | |||||
reliable transport, which allows GDB | |||||
acks to be turned off. */ | |||||
#define GDB_DBGPORT(name, probe, init, term, getc, putc) \ | #define GDB_DBGPORT(name, probe, init, term, getc, putc) \ | ||||
static struct gdb_dbgport name##_gdb_dbgport = { \ | static struct gdb_dbgport name##_gdb_dbgport = { \ | ||||
.gdb_name = #name, \ | .gdb_name = #name, \ | ||||
.gdb_probe = probe, \ | .gdb_probe = probe, \ | ||||
.gdb_init = init, \ | .gdb_init = init, \ | ||||
.gdb_term = term, \ | .gdb_term = term, \ | ||||
.gdb_getc = getc, \ | .gdb_getc = getc, \ | ||||
.gdb_putc = putc, \ | .gdb_putc = putc, \ | ||||
}; \ | }; \ | ||||
DATA_SET(gdb_dbgport_set, name##_gdb_dbgport) | DATA_SET(gdb_dbgport_set, name##_gdb_dbgport) | ||||
#endif /* !_GDB_GDB_H_ */ | #endif /* !_GDB_GDB_H_ */ |