serenity/Kernel/Arch
Idan Horowitz 0a2d520b15 Kernel: Handle CLINT interrupts separately from normal interrupts
Since CLINT interrupts are wired directly into the hart, instead of
going through an interrupt controller (the PLIC), trying to handle them
through the normal numbered-interrupt mechanism will just complicate it
for no reason.
Instead we now handle them directly in the trap handler.
2024-04-30 06:01:26 -06:00
..
aarch64 Kernel: Deduplicate HardwareTimerBase::frequency()/ticks_per_second() 2024-04-30 06:01:26 -06:00
riscv64 Kernel: Handle CLINT interrupts separately from normal interrupts 2024-04-30 06:01:26 -06:00
x86_64 Kernel: Deduplicate HardwareTimerBase::frequency()/ticks_per_second() 2024-04-30 06:01:26 -06:00
ArchSpecificThreadData.h Kernel: Add a Thread member for arch-specific data 2024-04-19 16:46:47 -06:00
CPU.h Everywhere: Run clang-format 2024-04-24 16:50:01 -04:00
CPUID.h Kernel/riscv64: Add RISC-V Processor class 2023-10-28 10:36:06 -06:00
CurrentTime.h Kernel: Abstract platform-specific current time methods from Scheduler 2022-10-14 14:13:51 +02:00
DebugOutput.h Kernel: Abstract platform-specific serial port access from kprintf 2022-09-20 18:43:05 +01:00
DeferredCallEntry.h Kernel: Extract DeferredCallEntry from Arch/Processor.h 2021-12-11 13:23:27 -08:00
DeferredCallPool.cpp Kernel: Move deferred call code into separate DeferredCallPool class 2023-04-03 20:01:28 -06:00
DeferredCallPool.h Kernel: Move deferred call code into separate DeferredCallPool class 2023-04-03 20:01:28 -06:00
Delay.h Kernel: Move IO delay code to x86 architecture subdirectory 2022-09-20 18:43:05 +01:00
FPUState.h Kernel/riscv64: Add register state related headers 2023-10-28 10:36:06 -06:00
init.cpp Kernel: Verify we are running on hart 0 2024-04-30 06:01:26 -06:00
InterruptManagement.h Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
Interrupts.h Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
IRQController.h Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
mcontext.h Toolchain: Add (basic) support for riscv64 2023-08-11 09:20:08 +02:00
PageDirectory.h Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
PageFault.cpp Kernel/riscv64: Don't hard-code the page fault reason on RISC-V 2024-03-25 14:18:38 -06:00
PageFault.h Kernel/riscv64: Don't hard-code the page fault reason on RISC-V 2024-03-25 14:18:38 -06:00
PCIMSI.h Kernel/riscv64: Make the kernel compile 2023-11-10 15:51:31 -07:00
PowerState.h Kernel: Simplify reboot & poweroff code flow a bit 2023-06-27 20:04:42 +02:00
Processor.cpp Kernel: Use the AK SetOnce container class in various cases 2024-04-26 23:46:23 -06:00
Processor.h Kernel: Use the AK SetOnce container class in various cases 2024-04-26 23:46:23 -06:00
ProcessorFunctions.include Kernel+LibC+LibELF: Move TLS handling to userspace 2024-04-19 16:46:47 -06:00
ProcessorSpecificDataID.h Kernel: Extract ProcessorSpecificDataID from from Arch/Processor.h 2021-12-11 13:23:27 -08:00
RegisterState.h Kernel/riscv64: Add register state related headers 2023-10-28 10:36:06 -06:00
SafeMem.h Everywhere: Fix order of includes and #pragma once 2022-09-18 18:30:05 -07:00
SmapDisabler.h Everywhere: Use east const in more places 2024-04-19 06:31:19 -04:00
ThreadRegisters.h Kernel/riscv64: Add register state related headers 2023-10-28 10:36:06 -06:00
TrapFrame.cpp Kernel: Share Processor class (and others) across architectures 2023-10-03 16:08:29 -06:00
TrapFrame.h Kernel/riscv64: Add register state related headers 2023-10-28 10:36:06 -06:00