diff options
author | Swapnil Haria <swapnilster@gmail.com> | 2017-11-09 13:04:39 -0600 |
---|---|---|
committer | Swapnil Haria <swapnilster@gmail.com> | 2017-12-15 00:50:32 +0000 |
commit | 6ab6c52b0bf9c91ef9249613cb4c9d8ab579b4f3 (patch) | |
tree | 8da65d170bf38e885eec878d7cb4fa934a81e3c7 /configs/example | |
parent | c5095c75f7a721551816efd16196d88eb997ec5a (diff) | |
download | gem5-6ab6c52b0bf9c91ef9249613cb4c9d8ab579b4f3.tar.xz |
mem-ruby: Support atomic_noncaching acceses in ruby
Ruby has no support for atomic_noncaching accesses, which prevents using
it with kvm-cpu. This patch fixes this by directly forwarding atomic
requests from the ruby port/sequencer to the corresponding directory
based on the destination address of the packet.
Change-Id: I0b4928bfda44fd9e5e48583c51d1ea422800da2d
Reviewed-on: https://gem5-review.googlesource.com/5601
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Reviewed-by: Bradford Beckmann <brad.beckmann@amd.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Bradford Beckmann <brad.beckmann@amd.com>
Diffstat (limited to 'configs/example')
-rw-r--r-- | configs/example/fs.py | 8 | ||||
-rw-r--r-- | configs/example/se.py | 6 |
2 files changed, 2 insertions, 12 deletions
diff --git a/configs/example/fs.py b/configs/example/fs.py index 65079372c..351d1c016 100644 --- a/configs/example/fs.py +++ b/configs/example/fs.py @@ -47,7 +47,7 @@ import sys import m5 from m5.defines import buildEnv from m5.objects import * -from m5.util import addToPath, fatal +from m5.util import addToPath, fatal, warn addToPath('../') @@ -147,12 +147,6 @@ def build_test_system(np): test_sys.kvm_vm = KvmVM() if options.ruby: - # Check for timing mode because ruby does not support atomic accesses - if not (options.cpu_type == "DerivO3CPU" or - options.cpu_type == "TimingSimpleCPU"): - print >> sys.stderr, "Ruby requires TimingSimpleCPU or O3CPU!!" - sys.exit(1) - Ruby.create_system(options, True, test_sys, test_sys.iobus, test_sys._dma_ports) diff --git a/configs/example/se.py b/configs/example/se.py index 7a19e5aef..56e4753b9 100644 --- a/configs/example/se.py +++ b/configs/example/se.py @@ -49,7 +49,7 @@ import os import m5 from m5.defines import buildEnv from m5.objects import * -from m5.util import addToPath, fatal +from m5.util import addToPath, fatal, warn addToPath('../') @@ -250,10 +250,6 @@ for i in xrange(np): system.cpu[i].createThreads() if options.ruby: - if options.cpu_type == "AtomicSimpleCPU": - print >> sys.stderr, "Ruby does not work with atomic cpu!!" - sys.exit(1) - Ruby.create_system(options, False, system) assert(options.num_cpus == len(system.ruby._cpu_ports)) |