Ruby: Add support for functional accesses
[gem5.git] / src / mem / protocol / MOESI_hammer-dma.sm
index d80c55c73b327f636287a069b0059b67246d99e3..bfb3cb98df4a82ee71448d73d42083d7ffc0fa1b 100644 (file)
@@ -32,8 +32,8 @@ machine(DMA, "DMA Controller")
   int request_latency = 6
 {
 
-  MessageBuffer responseFromDir, network="From", virtual_network="1", ordered="true", no_vector="true";
-  MessageBuffer reqToDirectory, network="To", virtual_network="0", ordered="false", no_vector="true";
+  MessageBuffer responseFromDir, network="From", virtual_network="1", ordered="true", vnet_type="response", no_vector="true";
+  MessageBuffer reqToDirectory, network="To", virtual_network="0", ordered="false", vnet_type="request", no_vector="true";
 
   state_declaration(State, 
                     desc="DMA states", 
@@ -60,6 +60,17 @@ machine(DMA, "DMA Controller")
     cur_state := state;
   }
 
+  AccessPermission getAccessPermission(Address addr) {
+    return AccessPermission:NotPresent;
+  }
+
+  void setAccessPermission(Address addr, State state) {
+  }
+
+  DataBlock getDataBlock(Address addr), return_by_ref="yes" {
+    error("DMA Controller does not support getDataBlock function.\n");
+  }
+
   out_port(reqToDirectory_out, DMARequestMsg, reqToDirectory, desc="...");
 
   in_port(dmaRequestQueue_in, SequencerMsg, mandatoryQueue, desc="...") {