From 1e1801085af5c16bbba1aad026eaadfadc92cc0e Mon Sep 17 00:00:00 2001 From: sotech117 Date: Mon, 4 Mar 2024 04:20:19 +0000 Subject: finish drivers --- kernel/drivers/tty/ldisc.c | 2 ++ kernel/main/kmain.c | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'kernel') diff --git a/kernel/drivers/tty/ldisc.c b/kernel/drivers/tty/ldisc.c index 4af35c5..1b79bae 100644 --- a/kernel/drivers/tty/ldisc.c +++ b/kernel/drivers/tty/ldisc.c @@ -215,6 +215,8 @@ void ldisc_key_pressed(ldisc_t *ldisc, char c) // cook the buffer ldisc->ldisc_cooked = ldisc->ldisc_head; + sched_wakeup_on(&ldisc->ldisc_read_queue, 0); + // emit a `\n` to the vterminal vterminal_write(&ldisc_to_tty(ldisc)->tty_vterminal, "\n", 1); break; diff --git a/kernel/main/kmain.c b/kernel/main/kmain.c index d46b2c0..4cec7bd 100644 --- a/kernel/main/kmain.c +++ b/kernel/main/kmain.c @@ -171,6 +171,7 @@ static void *initproc_run(long arg1, void *arg2) // dbg(DBG_PROC, "%s", "In main thread!\n"); #ifdef __DRIVERS__ + driverstest_main(0, NULL); char name[32] = {0}; for (long i = 0; i < __NTERMS__; i++) { @@ -179,8 +180,6 @@ static void *initproc_run(long arg1, void *arg2) kthread_t *thread = kthread_create(proc, kshell_proc_run, i, NULL); sched_make_runnable(thread); } - - driverstest_main(0, NULL); #endif // see if there are any children to wait for -- cgit v1.2.3-70-g09d2