From 0287f19edecd317a139d2ff809901b9c91eb0c2e Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sat, 31 Jan 2009 23:56:46 -0800 Subject: [PATCH] X86: Set up the console interrupt and add some DPRINTFs. --- src/dev/x86/i8259.cc | 4 +++- src/dev/x86/pc.cc | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/dev/x86/i8259.cc b/src/dev/x86/i8259.cc index b7c8bb08a..f9e0a0c93 100644 --- a/src/dev/x86/i8259.cc +++ b/src/dev/x86/i8259.cc @@ -242,7 +242,7 @@ X86ISA::I8259::requestInterrupt(int line) void X86ISA::I8259::signalInterrupt(int line) { - DPRINTF(I8259, "Interrupt raised on line %d.\n", line); + DPRINTF(I8259, "Interrupt requested for line %d.\n", line); if (line >= NumLines) fatal("Line number %d doesn't exist. The max is %d.\n", line, NumLines - 1); @@ -257,6 +257,7 @@ X86ISA::I8259::signalInterrupt(int line) void X86ISA::I8259::raiseInterruptPin(int number) { + DPRINTF(I8259, "Interrupt signal raised for pin %d.\n", number); if (number >= NumLines) fatal("Line number %d doesn't exist. The max is %d.\n", number, NumLines - 1); @@ -268,6 +269,7 @@ X86ISA::I8259::raiseInterruptPin(int number) void X86ISA::I8259::lowerInterruptPin(int number) { + DPRINTF(I8259, "Interrupt signal lowered for pin %d.\n", number); if (number >= NumLines) fatal("Line number %d doesn't exist. The max is %d.\n", number, NumLines - 1); diff --git a/src/dev/x86/pc.cc b/src/dev/x86/pc.cc index c2e562517..2deed95d3 100644 --- a/src/dev/x86/pc.cc +++ b/src/dev/x86/pc.cc @@ -42,6 +42,7 @@ #include "dev/terminal.hh" #include "dev/x86/i82094aa.hh" #include "dev/x86/i8254.hh" +#include "dev/x86/i8259.hh" #include "dev/x86/pc.hh" #include "dev/x86/south_bridge.hh" #include "sim/system.hh" @@ -112,8 +113,8 @@ Pc::intrFrequency() void Pc::postConsoleInt() { - warn_once("Don't know what interrupt to post for console.\n"); - //panic("Need implementation\n"); + southBridge->ioApic->signalInterrupt(4); + southBridge->pic1->signalInterrupt(4); } void -- 2.30.2