diff options
Diffstat (limited to 'kernel/drivers/keyboard.c')
-rw-r--r-- | kernel/drivers/keyboard.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/kernel/drivers/keyboard.c b/kernel/drivers/keyboard.c index 24ebbb0..fe4fe16 100644 --- a/kernel/drivers/keyboard.c +++ b/kernel/drivers/keyboard.c @@ -155,26 +155,10 @@ void int_keyboard(reg_t *frame) { ev.mode |= is_alt_down << 1; ev.mode |= is_ctrl_down << 2; fifo_object_write((u8 *)&ev, 0, sizeof(ev), keyboard_fifo); - kb_inode->has_data = keyboard_fifo->has_data; -} - -#define PS2_WAIT_RECV \ - { \ - for (;;) { \ - u8 status = inb(PS2_REG_STATUS); \ - if (status & 0x1) \ - break; \ - } \ - } - -#define PS2_WAIT_SEND \ - { \ - for (;;) { \ - u8 status = inb(PS2_REG_STATUS); \ - if (!(status & (0x1 << 1))) \ - break; \ - } \ + if (kb_inode) { + kb_inode->has_data = keyboard_fifo->has_data; } +} void install_keyboard(void) { keyboard_fifo = create_fifo_object(); |