Kernel: Rewrite APIC and PIC more OOP friendly

x86_64 port is slowly coming together
This commit is contained in:
Bananymous
2023-01-23 20:13:57 +02:00
parent b50bb03ed4
commit ba53582f23
13 changed files with 575 additions and 572 deletions

View File

@@ -1,16 +1,18 @@
#pragma once
#include <stdint.h>
#include <kernel/InterruptController.h>
namespace PIC
class PIC final : public InterruptController
{
public:
virtual void EOI(uint8_t) override;
virtual void EnableIrq(uint8_t) override;
virtual void GetISR(uint32_t[8]) override;
void Remap();
void MaskAll();
void EOI(uint8_t);
void Unmask(uint8_t);
void Mask(uint8_t);
static void Remap();
static void MaskAll();
uint16_t GetISR();
}
private:
static PIC* Create();
friend class InterruptController;
};