summaryrefslogtreecommitdiff
path: root/arch/i386/boot/idt.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-02-24arch: i386: cleanup everything and reorganizeDanny Holman1-162/+0
Clean up everything in the i386 arch directory. This code has been in dire need of refactoring for a long while. All the inline assembly functions and the data structures related to the architecture should be placed into their own header file. Now the scheduler can access registers and ISRs without having to deal with arch-specific code. Signed-off-by: Danny Holman <dholman@gymli.org>
2024-02-16arch: i386: move IRQ functions to PIC driverDanny Holman1-17/+26
Move all the functions that control IRQ lines to the PIC driver. This allows the IDT controller to handle only raw interrupts no matter where they come from. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: idt.c: install the ISR handlersDanny Holman1-47/+62
Actually install the ISR handlers to the IDT. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: idt.c: remove the irq number from handlerDanny Holman1-1/+2
Remove the irq number from the irq handler. This information is already stored in the ISR frame structure. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: idt.c: call the page fault handlerDanny Holman1-3/+1
Call the page fault handler when a page fault occurs instead of just dumping the registers and halting. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: idt.c: add a stopgap to halt_catch_fireDanny Holman1-0/+1
Add a infinite while loop just in case the "hlt" instruction fails. Signed-off-by: Danny Holman <dholman@gymli.org>
2023-11-26arch: i386: idt.c: remove unneeded define macrosDanny Holman1-23/+1
Remove several preprocessor macros that serve no purpose and pollute the source file. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-03-22arch: i386: make serial_writestring inlineDanny Holman1-14/+8
The serial_writestring function is small enough and platform-agnostic, and therefore it should be moved into the main serial header and marked as inline. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-01-15arch: i386: add support for IRQs and system callsDanny Holman1-1/+5
Add support for rudementary system calls and IRQ interrupts. Signed-off-by: Danny Holman <dholman@gymli.org>
2022-01-15arch: i386: simplify IDT setupDanny Holman1-4/+100
Simplify the interrupt descriptor table setup and frame assembly. Signed-off-by: Danny Holman <dholman@gymli.org>
2021-10-09arch: i386: include more information in IDTDanny Holman1-40/+40
Include information about the current stack frame in the IDT handler(s). Signed-off-by: Danny Holman <dholman@gymli.xyz>
2021-09-28arch: i386: fix IDT exception handlerDanny Holman1-33/+49
Fix the i386's general exception handler to actually work. Fix provided by Jon Sanderson (jjs295356@gmail.com). Signed-off-by: Danny Holman <dholman@gymli.xyz>
2021-08-30i386: create idt.c and isr.sDanny Holman1-0/+50
Create files that add IDT support for i386. Signed-off-by: Danny Holman <dholman@gymli.xyz>