aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/ioat/dma.h
diff options
context:
space:
mode:
authorDave Jiang <dave.jiang@intel.com>2015-08-26 16:17:24 -0400
committerVinod Koul <vinod.koul@intel.com>2015-09-21 11:40:05 -0400
commitad4a7b5065c1b4f5176e7d031c3cc2b36f776884 (patch)
treefebe068710e3019801c09c014d6cee2843cb24c3 /drivers/dma/ioat/dma.h
parent6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f (diff)
dmaengine: ioatdma: adding shutdown support
The ioatdma needs to be queisced and block all additional op submission during reboots. When NET_DMA was used, this caused issue as ops were still being sent to ioatdma during reboots even though PCI BME has been turned off. Even though NET_DMA has been deprecated, we need to prevent similar situations. The shutdown handler should address that. Signed-off-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/ioat/dma.h')
-rw-r--r--drivers/dma/ioat/dma.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/dma/ioat/dma.h b/drivers/dma/ioat/dma.h
index 1bc084986646..8f4e607d5817 100644
--- a/drivers/dma/ioat/dma.h
+++ b/drivers/dma/ioat/dma.h
@@ -82,8 +82,9 @@ struct ioatdma_device {
82 struct dma_pool *sed_hw_pool[MAX_SED_POOLS]; 82 struct dma_pool *sed_hw_pool[MAX_SED_POOLS];
83 struct dma_device dma_dev; 83 struct dma_device dma_dev;
84 u8 version; 84 u8 version;
85 struct msix_entry msix_entries[4]; 85#define IOAT_MAX_CHANS 4
86 struct ioatdma_chan *idx[4]; 86 struct msix_entry msix_entries[IOAT_MAX_CHANS];
87 struct ioatdma_chan *idx[IOAT_MAX_CHANS];
87 struct dca_provider *dca; 88 struct dca_provider *dca;
88 enum ioat_irq_mode irq_mode; 89 enum ioat_irq_mode irq_mode;
89 u32 cap; 90 u32 cap;
@@ -95,6 +96,7 @@ struct ioatdma_chan {
95 dma_addr_t last_completion; 96 dma_addr_t last_completion;
96 spinlock_t cleanup_lock; 97 spinlock_t cleanup_lock;
97 unsigned long state; 98 unsigned long state;
99 #define IOAT_CHAN_DOWN 0
98 #define IOAT_COMPLETION_ACK 1 100 #define IOAT_COMPLETION_ACK 1
99 #define IOAT_RESET_PENDING 2 101 #define IOAT_RESET_PENDING 2
100 #define IOAT_KOBJ_INIT_FAIL 3 102 #define IOAT_KOBJ_INIT_FAIL 3