mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-06 09:36:08 +00:00
Kernel: Introduce IRQ sharing support
The support is very basic - Each component that needs to handle IRQs inherits from InterruptHandler class. When the InterruptHandler constructor is called it registers itself in a SharedInterruptHandler. When an IRQ is fired, the SharedInterruptHandler is invoked, then it iterates through a list of the registered InterruptHandlers. Also, InterruptEnabler class was created to provide a way to enable IRQ handling temporarily, similar to InterruptDisabler (in CPU.h, which does the opposite). In addition to that a PCI::Device class has been added, that inherits from InterruptHandler.
This commit is contained in:
parent
2a160faf98
commit
1ee37245cd
Notes:
sideshowbarker
2024-07-19 09:53:59 +09:00
Author: https://github.com/supercomputer7
Commit: 1ee37245cd
Pull-request: https://github.com/SerenityOS/serenity/pull/1106
Reviewed-by: https://github.com/awesomekling
7 changed files with 399 additions and 0 deletions
|
@ -178,5 +178,6 @@ class Access;
|
|||
class MMIOAccess;
|
||||
class IOAccess;
|
||||
class MMIOSegment;
|
||||
class Device;
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue