aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/ioatdma.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/ioatdma.h')
-rw-r--r--drivers/dma/ioatdma.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/dma/ioatdma.h b/drivers/dma/ioatdma.h
index 0b8ffbde1e61..2abf0b88a973 100644
--- a/drivers/dma/ioatdma.h
+++ b/drivers/dma/ioatdma.h
@@ -28,6 +28,14 @@
28#include <linux/cache.h> 28#include <linux/cache.h>
29#include <linux/pci_ids.h> 29#include <linux/pci_ids.h>
30 30
31enum ioat_interrupt {
32 none = 0,
33 msix_multi_vector = 1,
34 msix_single_vector = 2,
35 msi = 3,
36 intx = 4,
37};
38
31#define IOAT_LOW_COMPLETION_MASK 0xffffffc0 39#define IOAT_LOW_COMPLETION_MASK 0xffffffc0
32 40
33/** 41/**
@@ -46,6 +54,9 @@ struct ioatdma_device {
46 struct pci_pool *completion_pool; 54 struct pci_pool *completion_pool;
47 struct dma_device common; 55 struct dma_device common;
48 u8 version; 56 u8 version;
57 enum ioat_interrupt irq_mode;
58 struct msix_entry msix_entries[4];
59 struct ioat_dma_chan *idx[4];
49}; 60};
50 61
51/** 62/**
@@ -94,6 +105,7 @@ struct ioat_dma_chan {
94 u32 high; 105 u32 high;
95 }; 106 };
96 } *completion_virt; 107 } *completion_virt;
108 struct tasklet_struct cleanup_task;
97}; 109};
98 110
99/* wrapper around hardware descriptor format + additional software fields */ 111/* wrapper around hardware descriptor format + additional software fields */