Merge branch 'master' into prog-loader
[lunaix-os.git] / lunaix-os / kernel / tty / lxconsole.c
index d555175a0e1d663c98a53a19bd3705ba301077d2..adf577a6ed5339c6d98b22229abe6d7d67460cb8 100644 (file)
@@ -8,11 +8,10 @@
 #include <lunaix/mm/valloc.h>
 #include <lunaix/mm/vmm.h>
 #include <lunaix/sched.h>
+#include <lunaix/signal.h>
 #include <lunaix/tty/console.h>
 #include <lunaix/tty/tty.h>
 
-#include <lunaix/lxsignal.h>
-
 static struct console lx_console;
 
 int
@@ -39,8 +38,8 @@ print_control_code(const char cntrl)
 int
 __lxconsole_listener(struct input_device* dev)
 {
-    uint32_t key = dev->current_pkt.sys_code;
-    uint32_t type = dev->current_pkt.pkt_type;
+    u32_t key = dev->current_pkt.sys_code;
+    u32_t type = dev->current_pkt.pkt_type;
     kbd_kstate_t state = key >> 16;
     ttychr = key & 0xff;
     key = key & 0xffff;
@@ -86,7 +85,7 @@ done:
 }
 
 int
-__tty_exec_cmd(struct device* dev, uint32_t req, va_list args)
+__tty_exec_cmd(struct device* dev, u32_t req, va_list args)
 {
     switch (req) {
         case TIOCGPGRP:
@@ -121,12 +120,26 @@ lxconsole_init()
     lx_console.flush_timer = NULL;
 }
 
+int
+__tty_write_pg(struct device* dev, void* buf, size_t offset)
+{
+    return __tty_write(dev, buf, offset, PG_SIZE);
+}
+
+int
+__tty_read_pg(struct device* dev, void* buf, size_t offset)
+{
+    return __tty_read(dev, buf, offset, PG_SIZE);
+}
+
 void
 lxconsole_spawn_ttydev()
 {
     struct device* tty_dev = device_addseq(NULL, &lx_console, "tty");
     tty_dev->write = __tty_write;
+    tty_dev->write_page = __tty_write_pg;
     tty_dev->read = __tty_read;
+    tty_dev->read_page = __tty_read_pg;
     tty_dev->exec_cmd = __tty_exec_cmd;
 
     waitq_init(&lx_reader);