Nearly complete PS/2 driver

This commit is contained in:
Jeremy Soller 2016-08-31 21:40:34 -06:00
parent f784e9a06a
commit 555ad5fd92
2 changed files with 190 additions and 33 deletions

View file

@ -1,5 +1,7 @@
use x86::io;
use device::ps2::PS2;
#[inline(always)]
unsafe fn master_ack() {
io::outb(0x20, 0x20);
@ -21,8 +23,7 @@ interrupt!(pit, {
});
interrupt!(keyboard, {
let data = io::inb(0x60);
print!("KEYBOARD {:X}\n", data);
PS2.lock().on_keyboard();
master_ack();
});
@ -77,8 +78,7 @@ interrupt!(pci3, {
});
interrupt!(mouse, {
let data = io::inb(0x60);
print!("MOUSE {:X}\n", data);
PS2.lock().on_mouse();
slave_ack();
});