From 982096af00698c4c746906f1cd0c9a8a243c3635 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Thu, 19 Oct 2017 20:44:20 +0100 Subject: [PATCH] mtx: Fix speed setting --- Kernel/platform-mtx/devtty.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Kernel/platform-mtx/devtty.c b/Kernel/platform-mtx/devtty.c index 41d1bac7..bda5501e 100644 --- a/Kernel/platform-mtx/devtty.c +++ b/Kernel/platform-mtx/devtty.c @@ -67,6 +67,8 @@ void tty_putc(uint8_t minor, unsigned char c) irqflags_t irq; if (minor < 3) { + /* FIXME: this makes our vt handling messy as we have the + IRQ off for the character I/O */ irq = di(); if (curtty != minor - 1) { vt_save(&ttysave[curtty]); @@ -121,10 +123,16 @@ void tty_setup(uint8_t minor) irqflags_t flags; int i; char *p = dart_setup; + struct tty_*t; + uint8_t cf; struct tty *t = &ttydata[minor]; uint8_t cf = t->termios.c_cflag; uint8_t r; + /* Console */ + if (minor < 2) + return; + if ((cf & CBAUD) < B150) { cf &= ~CBAUD; cf |= B150; @@ -145,7 +153,7 @@ void tty_setup(uint8_t minor) dart_setup[7] = r; dart_setup[7] = r; - if (minor == 1) { + if (minor == 3) { ctc1 = 0x45; ctc1 = dartbaud[cf & CBAUD]; } else { -- 2.34.1