gdb/:
* ser-unix.c (show_serial_hwflow): New function. (hardwire_raw): Add hardware flow control support. (_initialize_ser_hardwire): Add "set/show remoteflow". * Makefile.in (ser-unix.o): Depend on $(gdbcmd_h). * NEWS: Document the new command. gdb/doc/: * gdb.texinfo (Remote Configuration): Document "set/show remoteflow".
This commit is contained in:
parent
0e9517a90d
commit
23776285b7
6 changed files with 70 additions and 1 deletions
|
@ -33,6 +33,7 @@
|
|||
|
||||
#include "gdb_select.h"
|
||||
#include "gdb_string.h"
|
||||
#include "gdbcmd.h"
|
||||
|
||||
#ifdef HAVE_TERMIOS
|
||||
|
||||
|
@ -40,6 +41,18 @@ struct hardwire_ttystate
|
|||
{
|
||||
struct termios termios;
|
||||
};
|
||||
|
||||
#ifdef CRTSCTS
|
||||
/* Boolean to explicitly enable or disable h/w flow control. */
|
||||
static int serial_hwflow;
|
||||
static void
|
||||
show_serial_hwflow (struct ui_file *file, int from_tty,
|
||||
struct cmd_list_element *c, const char *value)
|
||||
{
|
||||
fprintf_filtered (file, _("Hardware flow control is %s.\n"), value);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* termios */
|
||||
|
||||
#ifdef HAVE_TERMIO
|
||||
|
@ -387,6 +400,19 @@ hardwire_raw (struct serial *scb)
|
|||
state.termios.c_lflag = 0;
|
||||
state.termios.c_cflag &= ~(CSIZE | PARENB);
|
||||
state.termios.c_cflag |= CLOCAL | CS8;
|
||||
#ifdef CRTSCTS
|
||||
/* h/w flow control. */
|
||||
if (serial_hwflow)
|
||||
state.termios.c_cflag |= CRTSCTS;
|
||||
else
|
||||
state.termios.c_cflag &= ~CRTSCTS;
|
||||
#ifdef CRTS_IFLOW
|
||||
if (serial_hwflow)
|
||||
state.termios.c_cflag |= CRTS_IFLOW;
|
||||
else
|
||||
state.termios.c_cflag &= ~CRTS_IFLOW;
|
||||
#endif
|
||||
#endif
|
||||
state.termios.c_cc[VMIN] = 0;
|
||||
state.termios.c_cc[VTIME] = 0;
|
||||
#endif
|
||||
|
@ -892,6 +918,20 @@ _initialize_ser_hardwire (void)
|
|||
ops->read_prim = ser_unix_read_prim;
|
||||
ops->write_prim = ser_unix_write_prim;
|
||||
serial_add_interface (ops);
|
||||
|
||||
#ifdef HAVE_TERMIOS
|
||||
#ifdef CRTSCTS
|
||||
add_setshow_boolean_cmd ("remoteflow", no_class,
|
||||
&serial_hwflow, _("\
|
||||
Set use of hardware flow control for remote serial I/O."), _("\
|
||||
Show use of hardware flow control for remote serial I/O."), _("\
|
||||
Enable or disable hardware flow control (RTS/CTS) on the serial port\n\
|
||||
when debugging using remote targets."),
|
||||
NULL,
|
||||
show_serial_hwflow,
|
||||
&setlist, &showlist);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
int
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue