[gem5-dev] [M] Change in gem5/gem5[develop]: mem: Implemement backdoor interface for Bridge

2023-01-11 Thread Yu-hsin Wang (Gerrit) via gem5-dev
Yu-hsin Wang has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/67291?usp=email )


Change subject: mem: Implemement backdoor interface for Bridge
..

mem: Implemement backdoor interface for Bridge

Change-Id: I5ff62b03c34e41395a957a0799925ddd9c275458
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/67291
Reviewed-by: Nicolas Boichat 
Tested-by: kokoro 
Maintainer: Gabe Black 
Reviewed-by: Gabe Black 
---
M src/mem/bridge.cc
M src/mem/bridge.hh
2 files changed, 49 insertions(+), 8 deletions(-)

Approvals:
  Gabe Black: Looks good to me, approved; Looks good to me, approved
  Nicolas Boichat: Looks good to me, but someone else must approve
  kokoro: Regressions pass




diff --git a/src/mem/bridge.cc b/src/mem/bridge.cc
index 0f744f7..36832eb 100644
--- a/src/mem/bridge.cc
+++ b/src/mem/bridge.cc
@@ -347,6 +347,14 @@
 return delay * bridge.clockPeriod() + memSidePort.sendAtomic(pkt);
 }

+Tick
+Bridge::BridgeResponsePort::recvAtomicBackdoor(
+PacketPtr pkt, MemBackdoorPtr )
+{
+return delay * bridge.clockPeriod() + memSidePort.sendAtomicBackdoor(
+pkt, backdoor);
+}
+
 void
 Bridge::BridgeResponsePort::recvFunctional(PacketPtr pkt)
 {
@@ -371,6 +379,13 @@
 memSidePort.sendFunctional(pkt);
 }

+void
+Bridge::BridgeResponsePort::recvMemBackdoorReq(
+const MemBackdoorReq , MemBackdoorPtr )
+{
+memSidePort.sendMemBackdoorReq(req, backdoor);
+}
+
 bool
 Bridge::BridgeRequestPort::trySatisfyFunctional(PacketPtr pkt)
 {
diff --git a/src/mem/bridge.hh b/src/mem/bridge.hh
index f56cef1..e4a6837 100644
--- a/src/mem/bridge.hh
+++ b/src/mem/bridge.hh
@@ -195,23 +195,35 @@

 /** When receiving a timing request from the peer port,
 pass it to the bridge. */
-bool recvTimingReq(PacketPtr pkt);
+bool recvTimingReq(PacketPtr pkt) override;

 /** When receiving a retry request from the peer port,
 pass it to the bridge. */
-void recvRespRetry();
+void recvRespRetry() override;

-/** When receiving a Atomic requestfrom the peer port,
+/** When receiving an Atomic request from the peer port,
 pass it to the bridge. */
-Tick recvAtomic(PacketPtr pkt);
+Tick recvAtomic(PacketPtr pkt) override;
+
+/** When receiving an Atomic backdoor request from the peer port,
+pass it to the bridge. */
+Tick recvAtomicBackdoor(
+PacketPtr pkt, MemBackdoorPtr ) override;
+

 /** When receiving a Functional request from the peer port,
 pass it to the bridge. */
-void recvFunctional(PacketPtr pkt);
+void recvFunctional(PacketPtr pkt) override;
+
+/** When receiving a Functional backdoor request from the peer  
port,

+pass it to the bridge. */
+void recvMemBackdoorReq(
+const MemBackdoorReq , MemBackdoorPtr ) override;
+

 /** When receiving a address range request the peer port,
 pass it to the bridge. */
-AddrRangeList getAddrRanges() const;
+AddrRangeList getAddrRanges() const override;
 };


@@ -303,11 +315,11 @@

 /** When receiving a timing request from the peer port,
 pass it to the bridge. */
-bool recvTimingResp(PacketPtr pkt);
+bool recvTimingResp(PacketPtr pkt) override;

 /** When receiving a retry request from the peer port,
 pass it to the bridge. */
-void recvReqRetry();
+void recvReqRetry() override;
 };

 /** Response port of the bridge. */

--
To view, visit  
https://gem5-review.googlesource.com/c/public/gem5/+/67291?usp=email
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: I5ff62b03c34e41395a957a0799925ddd9c275458
Gerrit-Change-Number: 67291
Gerrit-PatchSet: 2
Gerrit-Owner: Yu-hsin Wang 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Nicolas Boichat 
Gerrit-Reviewer: Nikos Nikoleris 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-CC: Yan Lee 
Gerrit-MessageType: merged
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org


[gem5-dev] [M] Change in gem5/gem5[develop]: mem: Implemement backdoor interface for Bridge

2023-01-10 Thread Yu-hsin Wang (Gerrit) via gem5-dev
Yu-hsin Wang has uploaded this change for review. (  
https://gem5-review.googlesource.com/c/public/gem5/+/67291?usp=email )



Change subject: mem: Implemement backdoor interface for Bridge
..

mem: Implemement backdoor interface for Bridge

Change-Id: I5ff62b03c34e41395a957a0799925ddd9c275458
---
M src/mem/bridge.cc
M src/mem/bridge.hh
2 files changed, 44 insertions(+), 8 deletions(-)



diff --git a/src/mem/bridge.cc b/src/mem/bridge.cc
index 0f744f7..36832eb 100644
--- a/src/mem/bridge.cc
+++ b/src/mem/bridge.cc
@@ -347,6 +347,14 @@
 return delay * bridge.clockPeriod() + memSidePort.sendAtomic(pkt);
 }

+Tick
+Bridge::BridgeResponsePort::recvAtomicBackdoor(
+PacketPtr pkt, MemBackdoorPtr )
+{
+return delay * bridge.clockPeriod() + memSidePort.sendAtomicBackdoor(
+pkt, backdoor);
+}
+
 void
 Bridge::BridgeResponsePort::recvFunctional(PacketPtr pkt)
 {
@@ -371,6 +379,13 @@
 memSidePort.sendFunctional(pkt);
 }

+void
+Bridge::BridgeResponsePort::recvMemBackdoorReq(
+const MemBackdoorReq , MemBackdoorPtr )
+{
+memSidePort.sendMemBackdoorReq(req, backdoor);
+}
+
 bool
 Bridge::BridgeRequestPort::trySatisfyFunctional(PacketPtr pkt)
 {
diff --git a/src/mem/bridge.hh b/src/mem/bridge.hh
index f56cef1..e4a6837 100644
--- a/src/mem/bridge.hh
+++ b/src/mem/bridge.hh
@@ -195,23 +195,35 @@

 /** When receiving a timing request from the peer port,
 pass it to the bridge. */
-bool recvTimingReq(PacketPtr pkt);
+bool recvTimingReq(PacketPtr pkt) override;

 /** When receiving a retry request from the peer port,
 pass it to the bridge. */
-void recvRespRetry();
+void recvRespRetry() override;

-/** When receiving a Atomic requestfrom the peer port,
+/** When receiving an Atomic request from the peer port,
 pass it to the bridge. */
-Tick recvAtomic(PacketPtr pkt);
+Tick recvAtomic(PacketPtr pkt) override;
+
+/** When receiving an Atomic backdoor request from the peer port,
+pass it to the bridge. */
+Tick recvAtomicBackdoor(
+PacketPtr pkt, MemBackdoorPtr ) override;
+

 /** When receiving a Functional request from the peer port,
 pass it to the bridge. */
-void recvFunctional(PacketPtr pkt);
+void recvFunctional(PacketPtr pkt) override;
+
+/** When receiving a Functional backdoor request from the peer  
port,

+pass it to the bridge. */
+void recvMemBackdoorReq(
+const MemBackdoorReq , MemBackdoorPtr ) override;
+

 /** When receiving a address range request the peer port,
 pass it to the bridge. */
-AddrRangeList getAddrRanges() const;
+AddrRangeList getAddrRanges() const override;
 };


@@ -303,11 +315,11 @@

 /** When receiving a timing request from the peer port,
 pass it to the bridge. */
-bool recvTimingResp(PacketPtr pkt);
+bool recvTimingResp(PacketPtr pkt) override;

 /** When receiving a retry request from the peer port,
 pass it to the bridge. */
-void recvReqRetry();
+void recvReqRetry() override;
 };

 /** Response port of the bridge. */

--
To view, visit  
https://gem5-review.googlesource.com/c/public/gem5/+/67291?usp=email
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: I5ff62b03c34e41395a957a0799925ddd9c275458
Gerrit-Change-Number: 67291
Gerrit-PatchSet: 1
Gerrit-Owner: Yu-hsin Wang 
Gerrit-MessageType: newchange
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org