summaryrefslogtreecommitdiff
path: root/Kernel/Interrupts/IOAPIC.h
diff options
context:
space:
mode:
authorLiav A <liavalb@gmail.com>2020-03-21 09:33:58 +0200
committerAndreas Kling <kling@serenityos.org>2020-03-24 16:15:33 +0100
commit0b7fc525e143fbe282466c0ca12360321854088e (patch)
treee669216632df4ff40645ffbcb4da28c60261f730 /Kernel/Interrupts/IOAPIC.h
parent3f98a67d75dad311eabc98b2423201c533ed01ef (diff)
downloadserenity-0b7fc525e143fbe282466c0ca12360321854088e.zip
Interrupts: Simplify IRQ disabling & enabling in IRQController(s)
Instead of blindly setting masks, if we want to disable an IRQ and it's already masked, we just return. The same happens if we want to enable an IRQ and it's unmasked.
Diffstat (limited to 'Kernel/Interrupts/IOAPIC.h')
-rw-r--r--Kernel/Interrupts/IOAPIC.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/Kernel/Interrupts/IOAPIC.h b/Kernel/Interrupts/IOAPIC.h
index 36acf4e25e..9786d85146 100644
--- a/Kernel/Interrupts/IOAPIC.h
+++ b/Kernel/Interrupts/IOAPIC.h
@@ -48,6 +48,7 @@ public:
virtual void eoi(const GenericInterruptHandler&) const override;
virtual void spurious_eoi(const GenericInterruptHandler&) const override;
virtual bool is_vector_enabled(u8 number) const override;
+ virtual bool is_enabled() const override;
virtual u16 get_isr() const override;
virtual u16 get_irr() const override;
virtual u32 gsi_base() const override { return m_gsi_base; }