68 timer.writeControl(0x00);
70 timer.writeCounter(0, 0);
71 timer.writeCounter(0, 0);
77 X86ISA::I82094AA::RedirTableEntry entry = 0;
80 ioApic.
writeReg(0x10, entry.bottomDW);
82 entry.deliveryMode = X86ISA::DeliveryMode::Fixed;
84 ioApic.
writeReg(0x18, entry.bottomDW);
88 ioApic.
writeReg(0x12, entry.bottomDW);
91 ioApic.
writeReg(0x14, entry.bottomDW);
94 ioApic.
writeReg(0x20, entry.bottomDW);
97 ioApic.
writeReg(0x28, entry.bottomDW);
100 ioApic.
writeReg(0x2C, entry.bottomDW);
103 ioApic.
writeReg(0x30, entry.bottomDW);
124 warn_once(
"Don't know what interrupt to clear for console.\n");
137 warn_once(
"Tried to clear PCI interrupt %d\n", line);
void signalInterrupt(int line)
void init() override
Do platform initialization stuff.
Bitfield< 10, 8 > deliveryMode
void writeControl(uint8_t val)
void postConsoleInt() override
Cause the cpu to post a serial interrupt to the CPU.
SouthBridge * southBridge
X86ISA::I82094AA * ioApic
void clearPciInt(int line) override
Clear a posted PCI->CPU interrupt.
void writeReg(uint8_t offset, uint32_t value)
Declaration of top level class for PC platform components.
void clearConsoleInt() override
Clear a posted CPU interrupt.
void signalInterrupt(int line)
void postPciInt(int line) override
Cause the chipset to post a cpi interrupt to the CPU.