aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatasha Moongrave <natasha@256phi.eu>2026-03-10 12:29:01 +0100
committerNatasha Moongrave <natasha@256phi.eu>2026-03-10 12:29:01 +0100
commit441497f261cfffc86f0e1f3a2d282b07e4049328 (patch)
tree4afe37eff59cc2d1fc8588581bd844f844486a17
parente2efa9549529d74856aa2327953a4b8b2d0ca2c2 (diff)
addd base configuration for offsets of PICs for hardware interrupts to not overlap with exception interrupts in src/interrupts.rs
-rw-r--r--StrixKernel/src/interrupts.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/StrixKernel/src/interrupts.rs b/StrixKernel/src/interrupts.rs
index e79898a..ea26f1f 100644
--- a/StrixKernel/src/interrupts.rs
+++ b/StrixKernel/src/interrupts.rs
@@ -6,6 +6,7 @@ use lazy_static::lazy_static;
use crate::println;
use crate::gdt;
+// EXCPETION INTERURPTS //
lazy_static! {
static ref IDT: InterruptDescriptorTable = {
@@ -38,6 +39,16 @@ extern "x86-interrupt" fn double_fault_handler(
panic!("EXCEPTION: DOUBLE FAULT\n{:#?}", stack_frame);
}
+// HARDWARE INTERRUPTS //
+use pic8259::ChainedPics;
+use spin;
+
+pub const PIC_1_OFFSET: u8 = 32;
+pub const PIC_2_OFFSET: u8 = PIC_1_OFFSET + 8;
+
+pub static PICS: spin::Mutex<ChainedPics> =
+ spin::Mutex::new(unsafe { ChainedPics::new(PIC_1_OFFSET, PIC_2_OFFSET) });
+
// TESTS //