summaryrefslogtreecommitdiff
path: root/configs/common
diff options
context:
space:
mode:
authorNikos Nikoleris <nikos.nikoleris@arm.com>2017-03-06 09:57:25 +0000
committerNikos Nikoleris <nikos.nikoleris@arm.com>2017-06-13 15:54:03 +0000
commitdcaa05f033ed898fa398fb2f4d3cc51335b7a013 (patch)
treeee480b646bb10d06a6861f48589f8f0d35fabf40 /configs/common
parent42e114ddefe2fbf56e7da3daccf2cfbe128242a6 (diff)
downloadgem5-dcaa05f033ed898fa398fb2f4d3cc51335b7a013.tar.xz
config: Warn not fail for ARM systems configured with ruby
Ruby for ARM systems is not fully supported but certain configurations are expected to work. This change removes the more general fail statement and warns or fails depending on the particular configuration. Change-Id: Ic24799aff966ba15858b93482e0f24a8672d9483 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/2905 Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'configs/common')
-rw-r--r--configs/common/FSConfig.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/configs/common/FSConfig.py b/configs/common/FSConfig.py
index cf9f034bc..b1d87f26f 100644
--- a/configs/common/FSConfig.py
+++ b/configs/common/FSConfig.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2010-2012, 2015-2016 ARM Limited
+# Copyright (c) 2010-2012, 2015-2017 ARM Limited
# All rights reserved.
#
# The license below extends only to copyright in the software and shall
@@ -402,9 +402,12 @@ def makeArmSystem(mem_mode, machine_type, num_cpus=1, mdesc=None,
self.system_port = self.membus.slave
if ruby:
- fatal("You're trying to use Ruby on ARM, which is not working " \
- "properly yet. If you want to test it anyway, you " \
- "need to remove this fatal error from FSConfig.py.")
+ if buildEnv['PROTOCOL'] == 'MI_example' and num_cpus > 1:
+ fatal("The MI_example protocol cannot implement Load/Store "
+ "Exclusive operations. Multicore ARM systems configured "
+ "with the MI_example protocol will not work properly.")
+ warn("You are trying to use Ruby on ARM, which is not working "
+ "properly yet.")
return self