From 86623b76dce72bc611f470e0e9ecad963fd558b2 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Thu, 7 Apr 2022 21:25:54 +0200 Subject: kernel: remove the `/tty` device --- src/kernel/arch/i386/driver/serial.c | 5 ++--- src/kernel/arch/i386/tty/tty.c | 4 ---- src/kernel/arch/io.h | 1 - 3 files changed, 2 insertions(+), 8 deletions(-) (limited to 'src/kernel/arch') diff --git a/src/kernel/arch/i386/driver/serial.c b/src/kernel/arch/i386/driver/serial.c index d2c34e7..14bb8fd 100644 --- a/src/kernel/arch/i386/driver/serial.c +++ b/src/kernel/arch/i386/driver/serial.c @@ -44,12 +44,11 @@ bool serial_poll_read(char *c) { size_t serial_read(char *buf, size_t len) { irq_interrupt_flag(true); for (size_t i = 0; i < len; i++) { - for (;;) { - if (serial_poll_read(&buf[i])) break; + while (!serial_poll_read(&buf[i])) asm("hlt" ::: "memory"); - } } irq_interrupt_flag(false); + // TODO root driver assumes no partial reads return len; } diff --git a/src/kernel/arch/i386/tty/tty.c b/src/kernel/arch/i386/tty/tty.c index ab15aba..fa3ce72 100644 --- a/src/kernel/arch/i386/tty/tty.c +++ b/src/kernel/arch/i386/tty/tty.c @@ -11,10 +11,6 @@ void tty_init(void) { serial_write("<3 ", 3); } -void tty_read(char *buf, size_t len) { - serial_read(buf, len); -} - void tty_write(const char *buf, size_t len) { vga_write(buf, len); serial_write(buf, len); diff --git a/src/kernel/arch/io.h b/src/kernel/arch/io.h index acba67a..ef8cb17 100644 --- a/src/kernel/arch/io.h +++ b/src/kernel/arch/io.h @@ -2,7 +2,6 @@ #include void tty_init(void); -void tty_read(char *buf, size_t len); void tty_write(const char *buf, size_t len); static inline void _tty_hex(const char *buf, size_t len) { -- cgit v1.2.3