diff options
Diffstat (limited to 'src/mem/ruby/system/System.cc')
-rw-r--r-- | src/mem/ruby/system/System.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mem/ruby/system/System.cc b/src/mem/ruby/system/System.cc index 6e144a703..b41f2d727 100644 --- a/src/mem/ruby/system/System.cc +++ b/src/mem/ruby/system/System.cc @@ -119,7 +119,7 @@ RubySystem::registerSparseMemory(SparseMemory* s) void RubySystem::registerMemController(MemoryControl *mc) { - m_memory_controller = mc; + m_memory_controller_vec.push_back(mc); } RubySystem::~RubySystem() @@ -365,9 +365,13 @@ RubySystem::startup() delete m_cache_recorder; m_cache_recorder = NULL; m_warmup_enabled = false; + // reset DRAM so that it's not waiting for events on the old event // queue - m_memory_controller->reset(); + for (int i = 0; i < m_memory_controller_vec.size(); ++i) { + m_memory_controller_vec[i]->reset(); + } + // Restore eventq head eventq_head = eventq->replaceHead(eventq_head); // Restore curTick and Ruby System's clock |