systemc: Use the new TLM socket types in the TLM bridge SimObjects.
authorGabe Black <gabeblack@google.com>
Tue, 16 Apr 2019 02:58:16 +0000 (19:58 -0700)
committerGabe Black <gabeblack@google.com>
Wed, 24 Apr 2019 11:00:56 +0000 (11:00 +0000)
These are in the definition of the python version of the SimObjects.

Change-Id: Iadb143158815df68cf32cc254ad19f755ab4e78a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18173
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Gabe Black <gabeblack@google.com>

src/systemc/tlm_bridge/TlmBridge.py

index dcc545280b6b444c369649aaab238c66c2271ba8..e3c15c2dc2e874b45c8a7a58cf8ce68851f99ef0 100644 (file)
@@ -29,6 +29,8 @@ from m5.objects.SystemC import SystemC_ScModule
 from m5.params import *
 from m5.proxy import *
 
+from m5.objects.Tlm import TlmTargetSocket, TlmInitiatorSocket
+
 class Gem5ToTlmBridgeBase(SystemC_ScModule):
     type = 'Gem5ToTlmBridgeBase'
     abstract = True
@@ -38,7 +40,6 @@ class Gem5ToTlmBridgeBase(SystemC_ScModule):
     system = Param.System(Parent.any, "system")
 
     gem5 = SlavePort('gem5 slave port')
-    tlm = MasterPort('TLM initiator socket')
     addr_ranges = VectorParam.AddrRange([],
             'Addresses served by this port\'s TLM side')
 
@@ -51,7 +52,6 @@ class TlmToGem5BridgeBase(SystemC_ScModule):
     system = Param.System(Parent.any, "system")
 
     gem5 = MasterPort('gem5 master port')
-    tlm = SlavePort('TLM target socket')
 
 
 class Gem5ToTlmBridge32(Gem5ToTlmBridgeBase):
@@ -60,12 +60,16 @@ class Gem5ToTlmBridge32(Gem5ToTlmBridgeBase):
     cxx_class = 'sc_gem5::Gem5ToTlmBridge<32>'
     cxx_header = 'systemc/tlm_bridge/gem5_to_tlm.hh'
 
+    tlm = TlmInitiatorSocket(32, 'TLM initiator socket')
+
 class Gem5ToTlmBridge64(Gem5ToTlmBridgeBase):
     type = 'Gem5ToTlmBridge64'
     cxx_template_params = [ 'unsigned int BITWIDTH' ]
     cxx_class = 'sc_gem5::Gem5ToTlmBridge<64>'
     cxx_header = 'systemc/tlm_bridge/gem5_to_tlm.hh'
 
+    tlm = TlmInitiatorSocket(64, 'TLM initiator socket')
+
 
 class TlmToGem5Bridge32(TlmToGem5BridgeBase):
     type = 'TlmToGem5Bridge32'
@@ -73,8 +77,12 @@ class TlmToGem5Bridge32(TlmToGem5BridgeBase):
     cxx_class = 'sc_gem5::TlmToGem5Bridge<32>'
     cxx_header = 'systemc/tlm_bridge/tlm_to_gem5.hh'
 
+    tlm = TlmTargetSocket(32, 'TLM target socket')
+
 class TlmToGem5Bridge64(TlmToGem5BridgeBase):
     type = 'TlmToGem5Bridge64'
     cxx_template_params = [ 'unsigned int BITWIDTH' ]
     cxx_class = 'sc_gem5::TlmToGem5Bridge<64>'
     cxx_header = 'systemc/tlm_bridge/tlm_to_gem5.hh'
+
+    tlm = TlmTargetSocket(64, 'TLM target socket')