Matthew Poremba has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/44806 )

Change subject: configs: Handle various DMA devices in GPU_VIPER
......................................................................

configs: Handle various DMA devices in GPU_VIPER

Viper is checking for the dma's type before making the port assignment.
In FullSystem mode the IDE device is a PortRef and does not have an
attribute 'type.' This handles the various types a bit better and
ensures that IDE device, the protocol tester, and upcoming DMA devices
related to FullSystem can be added.

Change-Id: I6879b25c6aabbbc22b0ee8dc9cbfec6399f70daa
---
M configs/ruby/GPU_VIPER.py
1 file changed, 7 insertions(+), 2 deletions(-)



diff --git a/configs/ruby/GPU_VIPER.py b/configs/ruby/GPU_VIPER.py
index 01ec602..d6ca374 100644
--- a/configs/ruby/GPU_VIPER.py
+++ b/configs/ruby/GPU_VIPER.py
@@ -776,11 +776,16 @@
         dma_cntrl = DMA_Controller(version=i, dma_sequencer=dma_seq,
                                    ruby_system=ruby_system)
         exec('system.dma_cntrl%d = dma_cntrl' % i)
-        if dma_device.type == 'MemTest':
+
+        # IDE doesn't have a .type but seems like everything else does.
+        if not hasattr(dma_device, 'type'):
+            exec('system.dma_cntrl%d.dma_sequencer.slave = dma_device' % i)
+        elif dma_device.type == 'MemTest':
exec('system.dma_cntrl%d.dma_sequencer.slave = dma_devices.test'
                  % i)
         else:
- exec('system.dma_cntrl%d.dma_sequencer.slave = dma_device.dma' % i) + exec("system.dma_cntrl%d.dma_sequencer.slave = dma_device.dma" % i)
+
         dma_cntrl.requestToDir = MessageBuffer(buffer_size=0)
         dma_cntrl.requestToDir.master = ruby_system.network.slave
         dma_cntrl.responseFromDir = MessageBuffer(buffer_size=0)

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/44806
To unsubscribe, or for help writing mail filters, visit https://gem5-review.googlesource.com/settings

Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I6879b25c6aabbbc22b0ee8dc9cbfec6399f70daa
Gerrit-Change-Number: 44806
Gerrit-PatchSet: 1
Gerrit-Owner: Matthew Poremba <matthew.pore...@amd.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to