Giacomo Travaglini has uploaded this change for review. ( https://gem5-review.googlesource.com/c/public/gem5/+/57289 )

Change subject: mem: Add external TLBI flags to the Request object
......................................................................

mem: Add external TLBI flags to the Request object

* TLBI_EXT_SYNC: This flag tells the CPU model that a
remote TLBI Sync has been requested

* TLBI_EXT_SYNC_COMP: This flag tells the interconnect that a
remote TLBI Sync request has completed

JIRA: https://gem5.atlassian.net/browse/GEM5-1097

Change-Id: I459d22f112038cc1427e24999904ba74c1c08cfb
---
M src/mem/request.hh
1 file changed, 35 insertions(+), 2 deletions(-)



diff --git a/src/mem/request.hh b/src/mem/request.hh
index 867cbb0..85a9bed 100644
--- a/src/mem/request.hh
+++ b/src/mem/request.hh
@@ -243,6 +243,14 @@
         /** The Request is a TLB shootdown sync */
         TLBI_SYNC                   = 0x0000200000000000,

+        /** The Request tells the CPU model that a
+            remote TLB Sync has been requested */
+        TLBI_EXT_SYNC               = 0x0000400000000000,
+
+        /** The Request tells the interconnect that a
+            remote TLB Sync request has completed */
+        TLBI_EXT_SYNC_COMP          = 0x0000800000000000,
+
         /**
          * These flags are *not* cleared when a Request object is
          * reused (assigned a new address).
@@ -255,7 +263,8 @@
     static const FlagsType HTM_CMD = HTM_START | HTM_COMMIT |
         HTM_CANCEL | HTM_ABORT;

-    static const FlagsType TLBI_CMD = TLBI | TLBI_SYNC;
+    static const FlagsType TLBI_CMD = TLBI | TLBI_SYNC |
+        TLBI_EXT_SYNC | TLBI_EXT_SYNC_COMP;

     /** Requestor Ids that are statically allocated
      * @{*/
@@ -985,7 +994,14 @@

     bool isTlbi() const { return _flags.isSet(TLBI); }
     bool isTlbiSync() const { return _flags.isSet(TLBI_SYNC); }
-    bool isTlbiCmd() const { return isTlbi() || isTlbiSync(); }
+    bool isTlbiExtSync() const { return _flags.isSet(TLBI_EXT_SYNC); }
+ bool isTlbiExtSyncComp() const { return _flags.isSet(TLBI_EXT_SYNC_COMP); }
+    bool
+    isTlbiCmd() const
+    {
+        return (isTlbi() || isTlbiSync() ||
+                isTlbiExtSync() || isTlbiExtSyncComp());
+    }

     bool
     isAtomic() const

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/57289
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: I459d22f112038cc1427e24999904ba74c1c08cfb
Gerrit-Change-Number: 57289
Gerrit-PatchSet: 1
Gerrit-Owner: Giacomo Travaglini <giacomo.travagl...@arm.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to