Gabe Black has submitted this change. (
https://gem5-review.googlesource.com/c/public/gem5/+/43346 )
Change subject: mem: Ensure that RangeAddrMapper publishes its address
range.
......................................................................
mem: Ensure that RangeAddrMapper publishes its address range.
This class, because it inherits from AddrMapper, would only poke its
upstream port to let it know to request its address range if it's
downstream port had asked it to. This doesn't make sense, since the
RangeAddrMapper has a fixed range it will respond to. Also, when the
RangeAddrMapper is notified that it's downstream port has an updated
range, the mapper should request that range and make sure all of the
addresses it will output are in the range the other object expects.
Change-Id: I57b558644b103822a9af53733bdb8518836ef5de
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/43346
Reviewed-by: Giacomo Travaglini <[email protected]>
Maintainer: Giacomo Travaglini <[email protected]>
Tested-by: kokoro <[email protected]>
---
M src/mem/addr_mapper.hh
1 file changed, 14 insertions(+), 1 deletion(-)
Approvals:
Giacomo Travaglini: Looks good to me, approved; Looks good to me, approved
kokoro: Regressions pass
diff --git a/src/mem/addr_mapper.hh b/src/mem/addr_mapper.hh
index 47a9b52..de601a1 100644
--- a/src/mem/addr_mapper.hh
+++ b/src/mem/addr_mapper.hh
@@ -226,7 +226,7 @@
void recvRespRetry();
- void recvRangeChange();
+ virtual void recvRangeChange();
};
/**
@@ -244,6 +244,13 @@
AddrRangeList getAddrRanges() const override;
+ void
+ init() override
+ {
+ AddrMapper::init();
+ cpuSidePort.sendRangeChange();
+ }
+
protected:
/**
* This contains a list of ranges the should be remapped. It must
@@ -259,6 +266,12 @@
std::vector<AddrRange> remappedRanges;
Addr remapAddr(Addr addr) const override;
+ void
+ recvRangeChange() override
+ {
+ // TODO Check that our peer is actually expecting to receive
accesses
+ // in our output range(s).
+ }
};
#endif //__MEM_ADDR_MAPPER_HH__
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/43346
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: I57b558644b103822a9af53733bdb8518836ef5de
Gerrit-Change-Number: 43346
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Earl Ou <[email protected]>
Gerrit-Reviewer: Gabe Black <[email protected]>
Gerrit-Reviewer: Giacomo Travaglini <[email protected]>
Gerrit-Reviewer: Nikos Nikoleris <[email protected]>
Gerrit-Reviewer: kokoro <[email protected]>
Gerrit-CC: Gabe Black <[email protected]>
Gerrit-CC: Yu-hsin Wang <[email protected]>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s