Subversion Repositories HelenOS

Rev

Rev 3963 | Rev 4017 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3963 Rev 3982
Line 61... Line 61...
61
#include <arch/debugger.h>
61
#include <arch/debugger.h>
62
#include <syscall/syscall.h>
62
#include <syscall/syscall.h>
63
#include <console/console.h>
63
#include <console/console.h>
64
#include <ddi/irq.h>
64
#include <ddi/irq.h>
65
#include <ddi/device.h>
65
#include <ddi/device.h>
-
 
66
#include <sysinfo/sysinfo.h>
66
 
67
 
67
 
68
 
68
/** Disable I/O on non-privileged levels
69
/** Disable I/O on non-privileged levels
69
 *
70
 *
70
 * Clean IOPL(12,13) and NT(14) flags in EFLAGS register
71
 * Clean IOPL(12,13) and NT(14) flags in EFLAGS register
Line 171... Line 172...
171
    }
172
    }
172
}
173
}
173
 
174
 
174
void arch_post_smp_init(void)
175
void arch_post_smp_init(void)
175
{
176
{
-
 
177
    devno_t devno = device_assign_devno();
176
    /* keyboard controller */
178
    /* keyboard controller */
177
    (void) i8042_init((i8042_t *) I8042_BASE, device_assign_devno(),
179
    (void) i8042_init((i8042_t *) I8042_BASE, devno, IRQ_KBD);
-
 
180
 
-
 
181
    /*
-
 
182
     * This is the necessary evil until the userspace driver is entirely
178
        IRQ_KBD);
183
     * self-sufficient.
-
 
184
     */
-
 
185
    sysinfo_set_item_val("kbd", NULL, true);
-
 
186
    sysinfo_set_item_val("kbd.devno", NULL, devno);
-
 
187
    sysinfo_set_item_val("kbd.inr", NULL, IRQ_KBD);
179
}
188
}
180
 
189
 
181
void calibrate_delay_loop(void)
190
void calibrate_delay_loop(void)
182
{
191
{
183
    i8254_calibrate_delay_loop();
192
    i8254_calibrate_delay_loop();