From 5424760719a92093b8c53614641319e02648ce7a Mon Sep 17 00:00:00 2001 From: Jonas 'Sortie' Termansen Date: Wed, 9 Jan 2013 23:30:36 +0100 Subject: [PATCH] Refactor kernel interrupt API. --- sortix/com.cpp | 5 ++++- sortix/{ => include/sortix/kernel}/interrupt.h | 11 ++++++++--- sortix/interrupt.cpp | 2 +- sortix/kb/ps2.cpp | 6 +++++- sortix/kernel.cpp | 2 +- sortix/panic.cpp | 2 +- sortix/scheduler.cpp | 2 +- sortix/signal.cpp | 5 ++++- sortix/thread.cpp | 2 +- sortix/time.cpp | 2 +- sortix/x64/memorymanagement.cpp | 4 +++- sortix/x86-family/float.cpp | 4 +++- 12 files changed, 33 insertions(+), 14 deletions(-) rename sortix/{ => include/sortix/kernel}/interrupt.h (95%) diff --git a/sortix/com.cpp b/sortix/com.cpp index e142234a..0e02d90d 100644 --- a/sortix/com.cpp +++ b/sortix/com.cpp @@ -29,9 +29,12 @@ #include #include #include +#include + #include + #include -#include "interrupt.h" + #include "thread.h" #include "signal.h" #include "com.h" diff --git a/sortix/interrupt.h b/sortix/include/sortix/kernel/interrupt.h similarity index 95% rename from sortix/interrupt.h rename to sortix/include/sortix/kernel/interrupt.h index 61f26f21..0d58e337 100644 --- a/sortix/interrupt.h +++ b/sortix/include/sortix/kernel/interrupt.h @@ -22,12 +22,17 @@ *******************************************************************************/ -#ifndef SORTIX_INTERRUPT_H -#define SORTIX_INTERRUPT_H +#ifndef INCLUDE_SORTIX_KERNEL_INTERRUPT_H +#define INCLUDE_SORTIX_KERNEL_INTERRUPT_H -#include "cpu.h" +#include namespace Sortix { + +namespace CPU { +struct InterruptRegisters; +} // namespace CPU + namespace Interrupt { const unsigned IRQ0 = 32; diff --git a/sortix/interrupt.cpp b/sortix/interrupt.cpp index c6bc8903..853df984 100644 --- a/sortix/interrupt.cpp +++ b/sortix/interrupt.cpp @@ -24,13 +24,13 @@ #include #include +#include #include #include #include #include "x86-family/idt.h" -#include "interrupt.h" #include "scheduler.h" #include "signal.h" #include "process.h" diff --git a/sortix/kb/ps2.cpp b/sortix/kb/ps2.cpp index 1a5c305a..59ee22ce 100644 --- a/sortix/kb/ps2.cpp +++ b/sortix/kb/ps2.cpp @@ -24,10 +24,14 @@ #include #include +#include + #include + #include #include -#include "../interrupt.h" + +#include "../cpu.h" #include "ps2.h" namespace Sortix diff --git a/sortix/kernel.cpp b/sortix/kernel.cpp index cdee85de..851934fb 100644 --- a/sortix/kernel.cpp +++ b/sortix/kernel.cpp @@ -42,6 +42,7 @@ #include #include #include +#include #include #include @@ -75,7 +76,6 @@ #include "sound.h" #include "io.h" #include "pipe.h" -#include "interrupt.h" #include "poll.h" #include "dispmsg.h" #include "fs/kram.h" diff --git a/sortix/panic.cpp b/sortix/panic.cpp index ee4591ac..21c8183c 100644 --- a/sortix/panic.cpp +++ b/sortix/panic.cpp @@ -23,8 +23,8 @@ *******************************************************************************/ #include +#include #include -#include "interrupt.h" #include #include "calltrace.h" #include diff --git a/sortix/scheduler.cpp b/sortix/scheduler.cpp index 1b9287b8..b5dd76da 100644 --- a/sortix/scheduler.cpp +++ b/sortix/scheduler.cpp @@ -25,13 +25,13 @@ #include #include #include +#include #include #include #include "x86-family/gdt.h" #include "x86-family/float.h" -#include "interrupt.h" #include "time.h" #include "thread.h" #include "process.h" diff --git a/sortix/signal.cpp b/sortix/signal.cpp index f7f7016f..eb680a46 100644 --- a/sortix/signal.cpp +++ b/sortix/signal.cpp @@ -24,10 +24,13 @@ #include #include +#include + #include + #include #include -#include "interrupt.h" + #include "thread.h" #include "signal.h" diff --git a/sortix/thread.cpp b/sortix/thread.cpp index a95b27ff..a41ee25f 100644 --- a/sortix/thread.cpp +++ b/sortix/thread.cpp @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -37,7 +38,6 @@ #include "process.h" #include "thread.h" #include "scheduler.h" -#include "interrupt.h" #include "time.h" namespace Sortix diff --git a/sortix/time.cpp b/sortix/time.cpp index 00ae4d22..d45fe711 100644 --- a/sortix/time.cpp +++ b/sortix/time.cpp @@ -25,9 +25,9 @@ #include #include +#include #include "time.h" -#include "interrupt.h" #include "process.h" #include "scheduler.h" #include "sound.h" diff --git a/sortix/x64/memorymanagement.cpp b/sortix/x64/memorymanagement.cpp index 0b398fb1..b1b52a3e 100644 --- a/sortix/x64/memorymanagement.cpp +++ b/sortix/x64/memorymanagement.cpp @@ -24,10 +24,12 @@ #include #include +#include + #include + #include "multiboot.h" #include "x86-family/memorymanagement.h" -#include "interrupt.h" namespace Sortix { diff --git a/sortix/x86-family/float.cpp b/sortix/x86-family/float.cpp index 2b83971a..d33757b7 100644 --- a/sortix/x86-family/float.cpp +++ b/sortix/x86-family/float.cpp @@ -23,8 +23,10 @@ *******************************************************************************/ #include +#include + #include -#include "../interrupt.h" + #include "../thread.h" #include "float.h"