]> Zhao Yanbai Git Server - minix.git/commitdiff
If serial debugging in the boot monitor / kernel is enabled, don't touch
authorBen Gras <ben@minix3.org>
Thu, 29 Jan 2009 15:06:40 +0000 (15:06 +0000)
committerBen Gras <ben@minix3.org>
Thu, 29 Jan 2009 15:06:40 +0000 (15:06 +0000)
the serial line in use for it (mostly so that input isn't eaten by tty).

drivers/tty/rs232.c

index 8bc70599fe9c81910b883df5ecce2e9b3bd1123b..aed377b251d1288c8161228d6ddbc31ff97aba53 100644 (file)
@@ -445,9 +445,19 @@ tty_t *tp;                 /* which TTY */
   int line;
   port_t this_8250;
   int irq;
+  char l[10];
 
   /* Associate RS232 and TTY structures. */
   line = tp - &tty_table[NR_CONS];
+
+  /* See if kernel debugging is enabled; if so, don't initialize this
+   * serial line, making tty not look at the irq and returning ENXIO
+   * for all requests on it from userland. (The kernel will use it.)
+   */
+  if(env_get_param(SERVARNAME, l, sizeof(l)-1) == OK && atoi(l) == line) {
+     return;
+  }
+
   rs = tp->tty_priv = &rs_lines[line];
   rs->tty = tp;