diff rathaxes_samples_e1000_use_the_dma_abstraction_in_socket.patch @ 114:8eac160e5f1c

WIP, add a new hack on the compiler
author Louis Opter <louis@lse.epita.fr>
date Mon, 22 Jul 2013 00:35:20 -0700
parents b22983cb9e3a
children 5a663f8f0e54
line wrap: on
line diff
--- a/rathaxes_samples_e1000_use_the_dma_abstraction_in_socket.patch	Sat Jul 20 20:45:39 2013 -0700
+++ b/rathaxes_samples_e1000_use_the_dma_abstraction_in_socket.patch	Mon Jul 22 00:35:20 2013 -0700
@@ -1,11 +1,19 @@
 # HG changeset patch
-# Parent 05460906d5aba5d3671969d9ac53182d0ac91649
+# Parent 5a53813ed1306484aa98dd95fe1d284ed24111ab
 Replace Linux specific code in Socket by DMA calls
 
 diff --git a/rathaxes/samples/e1000/dma.blt b/rathaxes/samples/e1000/dma.blt
 --- a/rathaxes/samples/e1000/dma.blt
 +++ b/rathaxes/samples/e1000/dma.blt
-@@ -14,7 +14,7 @@
+@@ -1,6 +1,6 @@
+ with DMA, Builtin, LKM, Device
+ {
+-    template type   AbstractDMAHandle()
++    template type   DMA::AbstractDMAHandle()
+     {
+         chunk   LKM::includes()
+         {
+@@ -14,11 +14,11 @@
  
          map
          {
@@ -14,20 +22,40 @@
          }
      }
  
-@@ -51,7 +51,7 @@
+-    template type   AbstractDMADirection()
++    template type   DMA::AbstractDMADirection()
+     {
+         decl    data_types()
+         {
+@@ -42,7 +42,7 @@
+ 
+         map
+         {
+-            /* XXX: we should use ${AbstractDMADirection} here: */
++            /* XXX: we should use ${DMA::AbstractDMADirection} here: */
+             dma_direction: ((enum dma_data_direction)${self});
+         }
+     }
+@@ -51,11 +51,11 @@
      {
          chunk  ::CALL()
          {
 -            dma_map_single(${dev.k_device}, ${buf}, ${size}, ${dir.dma_direction});
-+            ((${DMA::AbstractDMAHandle})dma_map_single(${dev.k_device}, ${buf}, ${size}, ${dir.dma_direction}));
++            ((${DMA::DMA::AbstractDMAHandle})dma_map_single(${dev.k_device}, ${buf}, ${size}, ${dir.dma_direction}));
          }
      }
  
-@@ -63,11 +63,19 @@
+-    template sequence   unmap(Device::AbstractDevice dev, AbstractDMAHandle handle, Builtin::number size, DMADirection dir)
++    template sequence   unmap(Device::AbstractDevice dev, DMA::AbstractDMAHandle handle, Builtin::number size, DMADirection dir)
+     {
+         chunk  ::CALL()
+         {
+@@ -63,15 +63,23 @@
          }
      }
  
-+    template sequence   mapping_error(Device::AbstractDevice dev, AbstractDMAHandle handle)
+-    template sequence   alloc_coherent(Device::AbstractDevice dev, Builtin::number size, AbstractDMAHandle handle)
++    template sequence   mapping_error(Device::AbstractDevice dev, DMA::AbstractDMAHandle handle)
 +    {
 +        chunk ::CALL()
 +        {
@@ -35,7 +63,7 @@
 +        }
 +    }
 +
-     template sequence   alloc_coherent(Device::AbstractDevice dev, Builtin::number size, AbstractDMAHandle handle)
++    template sequence   alloc_coherent(Device::AbstractDevice dev, Builtin::number size, DMA::AbstractDMAHandle handle)
      {
          chunk  ::CALL()
          {
@@ -44,6 +72,11 @@
          }
      }
  
+-    template sequence   free_coherent(Device::AbstractDevice dev, Builtin::number size, Builtin::symbol addr, AbstractDMAHandle handle)
++    template sequence   free_coherent(Device::AbstractDevice dev, Builtin::number size, Builtin::symbol addr, DMA::AbstractDMAHandle handle)
+     {
+         chunk  ::CALL()
+         {
 diff --git a/rathaxes/samples/e1000/dma.rti b/rathaxes/samples/e1000/dma.rti
 --- a/rathaxes/samples/e1000/dma.rti
 +++ b/rathaxes/samples/e1000/dma.rti