diff options
author | Liav A <liavalb@gmail.com> | 2020-01-21 13:20:16 +0200 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2020-01-22 12:22:09 +0100 |
commit | 1ee37245cd7342a649d50653b137e4ca626e88b4 (patch) | |
tree | a5ca6b9e87d1c8430133a71d58090a9753252061 /Kernel/Devices/MBVGADevice.cpp | |
parent | 2a160faf989124b3599c14a50f6604c33bb34d64 (diff) | |
download | serenity-1ee37245cd7342a649d50653b137e4ca626e88b4.zip |
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.
Diffstat (limited to 'Kernel/Devices/MBVGADevice.cpp')
0 files changed, 0 insertions, 0 deletions