mem: Fix guest corruption when caches handle uncacheable accesses
[gem5.git] / src / mem / noncoherent_bus.hh
index dd43d8c19909aed66c4f26a42e053b052d102b23..a42c26b2e989ca1082aca335f9d5fb0d636df39c 100644 (file)
@@ -73,9 +73,11 @@ class NoncoherentBus : public BaseBus
   protected:
 
     /**
-     * Declare the single layer of this bus.
+     * Declare the two layers of this bus, one for requests and one
+     * for responses.
      */
-    Layer layer;
+    Layer<SlavePort> reqLayer;
+    Layer<MasterPort> respLayer;
 
     /**
      * Declaration of the non-coherent bus slave port type, one will
@@ -132,7 +134,7 @@ class NoncoherentBus : public BaseBus
          * Get the maximum block size as seen by the bus.
          */
         virtual unsigned deviceBlockSize() const
-        { return bus.findBlockSize(); }
+        { return bus.deviceBlockSize(); }
 
     };
 
@@ -177,7 +179,7 @@ class NoncoherentBus : public BaseBus
          * Get the maximum block size as seen by the bus.
          */
         virtual unsigned deviceBlockSize() const
-        { return bus.findBlockSize(); }
+        { return bus.deviceBlockSize(); }
 
     };
 
@@ -205,7 +207,7 @@ class NoncoherentBus : public BaseBus
 
     NoncoherentBus(const NoncoherentBusParams *p);
 
-    unsigned int drain(Event *de);
+    unsigned int drain(DrainManager *dm);
 
 };