Device IRQs WIP

This commit is contained in:
2026-03-12 19:23:47 +01:00
parent 04b7355a3d
commit 19793e9126
29 changed files with 420 additions and 187 deletions

View File

@@ -229,8 +229,8 @@ static void ps2kb_set_typematic (uint8_t delay, uint8_t rate) {
outb (KB_DATA, (delay << 5) | (rate & 0x1F));
}
bool ps2kb_init (struct device* device, void* arg) {
(void)device, (void)arg;
bool ps2kb_init (struct device* device, void* arg, struct proc* proc, struct reschedule_ctx* rctx) {
(void)device, (void)arg, (void)proc, (void)rctx;
ioapic_route_irq (PS2KB, 1, 0, thiscpu->lapic_id);
irq_attach (&ps2kb_irq, NULL, PS2KB);
@@ -255,8 +255,8 @@ bool ps2kb_init (struct device* device, void* arg) {
return true;
}
void ps2kb_fini (struct device* device) {
(void)device;
void ps2kb_fini (struct device* device, struct proc* proc, struct reschedule_ctx* rctx) {
(void)device, (void)proc, (void)rctx;
irq_detach (PS2KB);
ringbuffer_fini (&ps2kb_ringbuffer);