summaryrefslogtreecommitdiff
path: root/util/tlm/sc_slave_port.hh
diff options
context:
space:
mode:
authorChristian Menard <Christian.Menard@tu-dresden.de>2017-02-09 19:15:35 -0500
committerChristian Menard <Christian.Menard@tu-dresden.de>2017-02-09 19:15:35 -0500
commitd2b19d2732e99b53a31bb967ffccbd44d6619fa3 (patch)
tree70142d9adcb5817369a1982b42e1025f6e88cda0 /util/tlm/sc_slave_port.hh
parent55f5c4dd8a10d14a24208110df891b8b2bbf56e4 (diff)
downloadgem5-d2b19d2732e99b53a31bb967ffccbd44d6619fa3.tar.xz
misc: Clean up and complete the gem5<->SystemC-TLM bridge [3/10]
The current TLM bridge only provides a Slave Port that allows the gem5 world to send request to the SystemC world. This patch series refractors and cleans up the existing code, and adds a Master Port that allows the SystemC world to send requests to the gem5 world. This patch: * Simplify the Slave Port by using a simple_initiator_socket. Testing Done: Example applications are still running. Reviewed at http://reviews.gem5.org/r/3686/ Signed-off-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'util/tlm/sc_slave_port.hh')
-rw-r--r--util/tlm/sc_slave_port.hh9
1 files changed, 2 insertions, 7 deletions
diff --git a/util/tlm/sc_slave_port.hh b/util/tlm/sc_slave_port.hh
index a42532cad..9e37ff4bb 100644
--- a/util/tlm/sc_slave_port.hh
+++ b/util/tlm/sc_slave_port.hh
@@ -67,12 +67,10 @@ namespace Gem5SystemC
* original packet as a payload extension, the packet can be restored and send
* back to the gem5 world upon receiving a response from the SystemC world.
*/
-class SCSlavePort : public tlm::tlm_initiator_socket<>,
- public tlm::tlm_bw_transport_if<>,
- public ExternalSlave::Port
+class SCSlavePort : public ExternalSlave::Port
{
public:
- SCSlavePort &iSocket;
+ tlm_utils::simple_initiator_socket<SCSlavePort> iSocket;
/** One instance of pe and the related callback needed */
//payloadEvent<SCSlavePort> pe;
@@ -111,9 +109,6 @@ class SCSlavePort : public tlm::tlm_initiator_socket<>,
tlm::tlm_phase& phase,
sc_core::sc_time& t);
- void invalidate_direct_mem_ptr(sc_dt::uint64 start_range,
- sc_dt::uint64 end_range);
-
public:
SCSlavePort(const std::string &name_,
const std::string &systemc_name,