summaryrefslogtreecommitdiff
path: root/src/mem/noncoherent_xbar.hh
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2019-03-22 15:46:57 -0700
committerGabe Black <gabeblack@google.com>2019-04-10 10:39:43 +0000
commit680a689fd6ca844b373bf2c5ba9028b7b563a356 (patch)
tree55bf84ea5a3d1ac7712aa26c5590b7c00cfbbdca /src/mem/noncoherent_xbar.hh
parent729d9949f74a2fef8ed27de83e1f918fbb8c431d (diff)
downloadgem5-680a689fd6ca844b373bf2c5ba9028b7b563a356.tar.xz
mem: Plumb backdoor requests through the xbar classes.
Change-Id: Ic8f49339ab95c31d2f00edfdf23a46f1271ec3aa Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17593 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Maintainer: Gabe Black <gabeblack@google.com>
Diffstat (limited to 'src/mem/noncoherent_xbar.hh')
-rw-r--r--src/mem/noncoherent_xbar.hh11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mem/noncoherent_xbar.hh b/src/mem/noncoherent_xbar.hh
index 9d4efbee2..4f72cef4d 100644
--- a/src/mem/noncoherent_xbar.hh
+++ b/src/mem/noncoherent_xbar.hh
@@ -113,7 +113,13 @@ class NoncoherentXBar : public BaseXBar
Tick
recvAtomic(PacketPtr pkt) override
{
- return xbar.recvAtomic(pkt, id);
+ return xbar.recvAtomicBackdoor(pkt, id);
+ }
+
+ Tick
+ recvAtomicBackdoor(PacketPtr pkt, MemBackdoorPtr &backdoor) override
+ {
+ return xbar.recvAtomicBackdoor(pkt, id, &backdoor);
}
void
@@ -172,7 +178,8 @@ class NoncoherentXBar : public BaseXBar
virtual bool recvTimingReq(PacketPtr pkt, PortID slave_port_id);
virtual bool recvTimingResp(PacketPtr pkt, PortID master_port_id);
void recvReqRetry(PortID master_port_id);
- Tick recvAtomic(PacketPtr pkt, PortID slave_port_id);
+ Tick recvAtomicBackdoor(PacketPtr pkt, PortID slave_port_id,
+ MemBackdoorPtr *backdoor=nullptr);
void recvFunctional(PacketPtr pkt, PortID slave_port_id);
public: