Gabe Black has uploaded this change for review. ( 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
---
M src/mem/addr_mapper.hh
1 file changed, 9 insertions(+), 1 deletion(-)



diff --git a/src/mem/addr_mapper.hh b/src/mem/addr_mapper.hh
index 47a9b52..59e60b4 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,8 @@

     AddrRangeList getAddrRanges() const override;

+    void init() override { cpuSidePort.sendRangeChange(); }
+
   protected:
     /**
      * This contains a list of ranges the should be remapped. It must
@@ -259,6 +261,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: 1
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-CC: Gabe Black <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to