summaryrefslogtreecommitdiff
path: root/src/dev
AgeCommit message (Collapse)Author
2011-08-19ARM: Add VExpress_E support with PCIe to gem5Ali Saidi
2011-08-19ARM: Add support for Versatile Express boardsAli Saidi
2011-08-19ARM: Make GIC function that should only be called by GIC protected.Ali Saidi
2011-08-19IDE: Fix issues with new PIIX kernel driver and our model.Ali Saidi
The driver can read the IDE config register as a 32 bit register since some adapters use bit 18 as a disable channel bit. If the size isn't set in a PRD it should be 64K according to the SPEC (and driver) not 128K.
2011-08-19ARM: Add per-cpu local timers for ARM.Geoffrey Blake
Cortex-A9 processors can have a local timer and watchdog counter. It is enabled by default in Linux and up to this point we've had to disable them since a model wasn't available. This change allows a default MP ARM Linux configuration to boot.
2011-08-19ARM: Add per-processor interrupt support to GIC.Prakash Ramrakhani
2011-08-19ARM: quiet what can be a very noise CLCD controller.Ali Saidi
2011-07-10IO: Handle case where ISA Fake device is being used as a fake memory.Ali Saidi
2011-07-10ARM: Fix mp interrupt bug in GIC.Daniel Johnson
Missing "!" made multiprocessor interrupts operate incorrectly.
2011-06-02scons: rename TraceFlags to DebugFlagsNathan Binkert
2011-06-02copyright: clean up copyright blocksNathan Binkert
2011-05-23config: revamp x86 config to avoid appending to SimObjectVectorsSteve Reinhardt
A significant contributor to the need for adoptOrphanParams() is the practice of appending to SimObjectVectors which have already been assigned as children. This practice sidesteps the assignment operation for those appended SimObjects, which is where parent/child relationships are typically established. This patch reworks the config scripts that use append() on SimObjectVectors, which all happen to be in the x86 system configuration. At some point in the future, I hope to make SimObjectVectors immutable (by deriving from tuple rather than list), at which time this patch will be necessary for correct operation. For now, it just avoids some of the warning messages that get printed in adoptOrphanParams().
2011-05-13ARM: Better RealView/Versatile EB platform support.Chander Sudanthi
Add registers and components to better support the VersatileEB board. Made the MIDR and SYS_ID register parameters to ArmSystem and RealviewCtrl respectively.
2011-05-04ARM: Make GIC handle IPIs and multiple processors.Prakash Ramrakhyani
2011-05-04ARM: Add snoop control unit device.Ali Saidi
2011-05-04ARM: Add support for some more registers in the real view controller.Ali Saidi
2011-05-04RealView: Fix the 24 and 100MHz clocks which were providing incorrect values.Chris Emmons
2011-04-20fix some build problems from prior changesetsNathan Binkert
2011-04-15trace: reimplement the DTRACE function so it doesn't use a vectorNathan Binkert
At the same time, rename the trace flags to debug flags since they have broader usage than simply tracing. This means that --trace-flags is now --debug-flags and --trace-help is now --debug-help
2011-04-15debug: create a Debug namespaceNathan Binkert
2011-04-15includes: sort all includesNathan Binkert
2011-04-04ARM: Include IDE/CF controller by default in PBX model.Ali Saidi
Frame buffer and boot linux: ./build/ARM_FS/m5.opt configs/example/fs.py --benchmark=ArmLinuxFrameBuf --kernel=vmlinux.touchkit Linux from a CF card: ./build/ARM_FS/m5.opt configs/example/fs.py --benchmark=ArmLinuxCflash --kernel=vmlinux.touchkit Run Android ./build/ARM_FS/m5.opt configs/example/fs.py --benchmark=ArmAndroid --kernel=vmlinux.android Run MP ./build/ARM_FS/m5.opt configs/example/fs.py --benchmark=ArmLinuxCflash --kernel=vmlinux.mp-2.6.38
2011-04-04IDE: Support x86, Alpha, and ARM use of the IDE controller.Ali Saidi
2011-04-04ARM: Fix checkpointing case where PL111 is powered off.Ali Saidi
2011-03-17Mem: Fix issue with dirty block being lost when entire block transferred to ↵Ali Saidi
non-cache. This change fixes the problem for all the cases we actively use. If you want to try more creative I/O device attachments (E.g. sharing an L2), this won't work. You would need another level of caching between the I/O device and the cache (which you actually need anyway with our current code to make sure writes propagate). This is required so that you can mark the cache in between as top level and it won't try to send ownership of a block to the I/O device. Asserts have been added that should catch any issues.
2011-02-23Includes: Don't include isa_traits.hh and use the TheISA namespace unless ↵Ali Saidi
really needed.
2011-02-23CLCD: Fix some serialization bugs with the clcd controller.Ali Saidi
2011-02-23ARM: Add support for read of 100MHz clock in system controller.Ali Saidi
2011-02-11VNC/ARM: Use VNC server and add support to boot into X11Ali Saidi
2011-02-11ARM: Fix timer calculations.Ali Saidi
The timer calculations were a bit off so time would run faster than it otherwise should
2011-02-06dev: fixed bugs to extend interrupt capability beyond 15 coresBrad Beckmann
2011-02-06x86: Add checkpointing capability to devicesJoel Hestness
Add checkpointing capability to the Intel 8254 timer, CMOS, I8042, PS2 Keyboard and Mouse, I82094AA, I8237, I8254, I8259, and speaker devices
2011-02-06MessagePort: implement the virtual recvTiming function to avoid double pkt ↵Joel Hestness
delete Double packet delete problem is due to an interrupt device deleting a packet that the SimpleTimingPort also deletes. Since MessagePort descends from SimpleTimingPort, simply reimplement the failing code from SimpleTimingPort: recvTiming.
2011-01-07Replace curTick global variable with accessor functions.Steve Reinhardt
This step makes it easy to replace the accessor functions (which still access a global variable) with ones that access per-thread curTick values.
2011-01-03Make commenting on close namespace brackets consistent.Steve Reinhardt
Ran all the source files through 'perl -pi' with this script: s|\s*(};?\s*)?/\*\s*(end\s*)?namespace\s*(\S+)\s*\*/(\s*})?|} // namespace $3|; s|\s*};?\s*//\s*(end\s*)?namespace\s*(\S+)\s*|} // namespace $2\n|; s|\s*};?\s*//\s*(\S+)\s*namespace\s*|} // namespace $1\n|; Also did a little manual editing on some of the arch/*/isa_traits.hh files and src/SConscript.
2010-12-20Style: Replace some tabs with spaces.Gabe Black
2010-11-26IGbE: return 0 on an invalid descriptor size instead of -1.Ali Saidi
Asserts where descSize() get called with assert if we end up returning 0.
2010-11-22IDE,X86: Fix IDE controller BAR configuration for x86.Gabe Black
2010-11-19SCons: Support building without an ISAAli Saidi
2010-11-15ARM: Add a Keyboard Mouse Interface controllerWilliam Wang
2010-11-15ARM: Implement a CLCD Frame bufferWilliam Wang
2010-11-15ARM: Add support for a dumb IDE controllerAli Saidi
2010-11-08ARM: Add checkpointing supportAli Saidi
2010-11-08ARM: Keep the warnings to a minimum.Ali Saidi
These warnings still need to be addresses, but pages of them is counterproductive.
2010-11-08Bus: Have the I/O devices that return address ranges print them out.Ali Saidi
This way we actually get device names associated with the devices.
2010-11-08sim: Use forward declarations for ports.Ali Saidi
Virtual ports need TLB data which means anything touching a file in the arch directory rebuilds any file that includes system.hh which in everything.
2010-10-17MIPS: Get rid of the backdoor device copy/pasted from and only used in Alpha.Gabe Black
2010-10-09UART: Make the 8250's MCR return a deterministic value.Gabe Black
This change makes the 8250 device return the value it has for the MCR when read instead of leaving the packet data unmodified/uninitialized. The value the UART has for the MCR may not be right, but that's a seperate issue that apparently hasn't caused any problems to date.
2010-10-01ARM: Add a fake flash controller so that unmodified linux can bootAli Saidi
With this change an unmodified Linux kernel can boot in M5.
2010-10-01ARM: Fix some subtle bugs in the GICPrakash Ramrakhyani
The GIC code can write to the registers with 8, 16, or 32 byte accesses which could set/clear different numbers of interrupts.