diff options
Diffstat (limited to 'cmd/terminal.c')
-rw-r--r-- | cmd/terminal.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/cmd/terminal.c b/cmd/terminal.c index f6e4d2539e3..9e32a4191e1 100644 --- a/cmd/terminal.c +++ b/cmd/terminal.c @@ -25,7 +25,9 @@ int do_terminal(struct cmd_tbl *cmd, int flag, int argc, char *const argv[]) if (!dev) return -1; - serial_reinit_all(); + if (IS_ENABLED(CONFIG_SERIAL)) + serial_reinit_all(); + printf("Entering terminal mode for port %s\n", dev->name); puts("Use '~.' to leave the terminal and get back to u-boot\n"); @@ -33,8 +35,8 @@ int do_terminal(struct cmd_tbl *cmd, int flag, int argc, char *const argv[]) int c; /* read from console and display on serial port */ - if (stdio_devices[0]->tstc()) { - c = stdio_devices[0]->getc(); + if (stdio_devices[0]->tstc(stdio_devices[0])) { + c = stdio_devices[0]->getc(stdio_devices[0]); if (last_tilde == 1) { if (c == '.') { putc(c); @@ -43,7 +45,7 @@ int do_terminal(struct cmd_tbl *cmd, int flag, int argc, char *const argv[]) } else { last_tilde = 0; /* write the delayed tilde */ - dev->putc('~'); + dev->putc(dev, '~'); /* fall-through to print current * character */ } @@ -53,12 +55,12 @@ int do_terminal(struct cmd_tbl *cmd, int flag, int argc, char *const argv[]) puts("[u-boot]"); putc(c); } - dev->putc(c); + dev->putc(dev, c); } /* read from serial port and display on console */ - if (dev->tstc()) { - c = dev->getc(); + if (dev->tstc(dev)) { + c = dev->getc(dev); putc(c); } } |