38,7 → 38,7 |
|
#include <arch/pm.h> |
|
#include <arch/drivers/ega.h> |
#include <genarch/drivers/legacy/ia32/io.h> |
#include <genarch/drivers/ega/ega.h> |
#include <arch/drivers/vesa.h> |
#include <genarch/kbd/i8042.h> |
62,6 → 62,7 |
#include <syscall/syscall.h> |
#include <console/console.h> |
#include <ddi/device.h> |
#include <sysinfo/sysinfo.h> |
|
#ifdef CONFIG_SMP |
#include <arch/smp/apic.h> |
124,10 → 125,17 |
|
void arch_post_smp_init(void) |
{ |
devno_t kbd = device_assign_devno(); |
devno_t mouse = device_assign_devno(); |
devno_t devno = device_assign_devno(); |
/* keyboard controller */ |
i8042_init(kbd, IRQ_KBD, mouse, IRQ_MOUSE); |
(void) i8042_init((i8042_t *) I8042_BASE, devno, IRQ_KBD); |
|
/* |
* This is the necessary evil until the userspace driver is entirely |
* self-sufficient. |
*/ |
sysinfo_set_item_val("kbd", NULL, true); |
sysinfo_set_item_val("kbd.devno", NULL, devno); |
sysinfo_set_item_val("kbd.inr", NULL, IRQ_KBD); |
} |
|
void calibrate_delay_loop(void) |
165,8 → 173,6 |
#else |
ega_redraw(); |
#endif |
|
i8042_grab(); |
} |
|
/** Return console to userspace |
174,7 → 180,6 |
*/ |
void arch_release_console(void) |
{ |
i8042_release(); |
} |
|
/** Construct function pointer |