summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2008-10-12Get rid of old RegContext code.Gabe Black
2008-10-12X86: Create a handy way to access labels from the ROM in microcode.Gabe Black
2008-10-12X86: Make X86's microcode ROM actually do something.Gabe Black
2008-10-12CPU: Make the highest order bit in the micro pc determine if it's ↵Gabe Black
combinational or from the ROM.
2008-10-12CPU: Create a microcode ROM object in the CPU which is defined by the ISA.Gabe Black
2008-10-12X86: Create an eret microop which returns from ROM to combinational decoding.Gabe Black
2008-10-12X86: Make Br never report itself as the last microop.Gabe Black
2008-10-12X86: Create a SeqOp class of microops and make Br one of them.Gabe Black
2008-10-12X86: Implement CPUID with a magical function instead of microcode.Gabe Black
2008-10-12X86: Fix the ordering of special physical address ranges.Gabe Black
2008-10-12X86: Create a mechanism for the IO APIC to access I8259 vectors.Gabe Black
2008-10-12X86: Actually use the extra vector bits we get from ICW2.Gabe Black
2008-10-12X86: Make the local APIC process interrupts and send them to the CPU.Gabe Black
2008-10-12X86: Make the local APIC handle interrupt messages from the IO APIC.Gabe Black
2008-10-12X86: Change the default value for the IO APIC redirection table.Gabe Black
2008-10-12X86: Make the bases for x86 fault class public.Gabe Black
2008-10-12X86: Make APICs communicate through the memory system.Gabe Black
2008-10-12Create a message port for sending messages as apposed to reading/writing a ↵Gabe Black
memory range.
2008-10-12X86: Add a LocalApic trace flag.Gabe Black
2008-10-12X86: Make the local APIC accessible through the memory system directly, and ↵Gabe Black
make the timer work.
2008-10-12Turn Interrupts objects into SimObjects. Also, move local APIC state into ↵Gabe Black
x86's Interrupts object.
2008-10-12CPU: Eliminate the get_vec function.Gabe Black
2008-10-11CPU: Add a getInterruptController functionGabe Black
2008-10-11X86: Create an IO APIC device.Gabe Black
2008-10-11X86: Set up a mechanism for the I8254 timer to cause interrupts.Gabe Black
2008-10-11X86: Add an Intel MP table to the simulation.Gabe Black
2008-10-11CPU: Eliminate the simPalCheck funciton.Gabe Black
2008-10-11CPU: Eliminate the hwrei function.Gabe Black
2008-10-11X86: Rename the PC device to Pc.Gabe Black
--HG-- rename : src/dev/x86/PC.py => src/dev/x86/Pc.py
2008-10-11X86: Bring the South Bridge device into dev/x86 and get rid of south_bridge ↵Gabe Black
directory. --HG-- rename : src/dev/x86/south_bridge/SouthBridge.py => src/dev/x86/SouthBridge.py rename : src/dev/x86/south_bridge/south_bridge.cc => src/dev/x86/south_bridge.cc rename : src/dev/x86/south_bridge/south_bridge.hh => src/dev/x86/south_bridge.hh
2008-10-11X86: Change I8254 and PCSpeaker devices from subdevices to SimObjects and ↵Gabe Black
eliminate subdevices. --HG-- rename : src/dev/x86/south_bridge/i8254.cc => src/dev/x86/i8254.cc rename : src/dev/x86/south_bridge/i8254.hh => src/dev/x86/i8254.hh rename : src/dev/x86/south_bridge/speaker.cc => src/dev/x86/speaker.cc rename : src/dev/x86/south_bridge/speaker.hh => src/dev/x86/speaker.hh
2008-10-11Devices: Make the Intel8254Timer device only use pointers to its counters.Gabe Black
2008-10-11X86: Make the CMOS and I8259 devices use IntDev and IntPin.Gabe Black
2008-10-11X86: Create the IntDev and IntPin system.Gabe Black
The IntDev class is a base for anything that supports IntPins. IntPins allow devices to generically trigger interrupts on a particular pin of an IntDev device without having to know what the device is or what pin they're attached to.
2008-10-11X86: Hook the CMOS device to the I8259 PICs.Gabe Black
2008-10-11X86: Make the I8259 decipher the commands it's given, and add some of it's ↵Gabe Black
registers.
2008-10-11X86: Change the I8259 from a subdevice into a real SimObject.Gabe Black
--HG-- rename : src/dev/x86/south_bridge/i8259.cc => src/dev/x86/i8259.cc rename : src/dev/x86/south_bridge/i8259.hh => src/dev/x86/i8259.hh
2008-10-11X86: Change the CMOS from a sub-device to a real SimObjectGabe Black
--HG-- rename : src/dev/x86/south_bridge/cmos.cc => src/dev/x86/cmos.cc rename : src/dev/x86/south_bridge/cmos.hh => src/dev/x86/cmos.hh
2008-10-10TLB: Make all tlbs derive from a common base class in both python and C++.Gabe Black
2008-10-10X86: Create SimObjects in python and C++ to represent the ACPI system ↵Gabe Black
description tables.
2008-10-10X86: Make the time on the RTC configurable.Gabe Black
2008-10-10X86: Create SimObjects in python and C++ to represent the Intel MP tables.Gabe Black
2008-10-10cprintf: properly deal with pointer typesNathan Binkert
2008-10-10swig: Add in a %rename to allow the same name to appear in multiple namespaces.Nathan Binkert
2008-10-10Rename the info function to inform to avoid likely name conflictsNathan Binkert
2008-10-10automergeNathan Binkert
2008-10-10output: Make panic/fatal/warn more flexible so we can add some new ones.Nathan Binkert
The major thrust of this change is to limit the amount of code duplication surrounding the code for these functions. This code also adds two new message types called info and hack. Info is meant to be less harsh than warn so people don't get confused and start thinking that the simulator is broken. Hack is a way for people to add runtime messages indicating that the simulator just executed a code "hack" that should probably be fixed. The benefit of knowing about these code hacks is that it will let people know what sorts of inaccuracies or potential bugs might be entering their experiments. Finally, I've added some flags to turn on and off these message types so command line options can change them.
2008-10-10gdb: add a debugging function that enters the python interpreter.Nathan Binkert
2008-10-10jobfile: Add support for dictionaries as jobfile options.Nathan Binkert
If the same dictionary option is seen in several options, those dictionaries are composed. If you define the same dictionary key in multiple options, the system flags an error. Also, clean up the jobfile code so that it is more debuggable.
2008-10-10python: Add a utility for nested attribute dicts.Nathan Binkert
Change attrdict so that attributes that begin with an underscore don't go into the dict.