aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/ioat/dma_v2.h
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2009-09-08 20:42:54 -0400
committerDan Williams <dan.j.williams@intel.com>2009-09-08 20:42:54 -0400
commit2aec048cdc4a5a81163a42a61df903f76a27e737 (patch)
tree00347decc9b145f4c805c8475b980d2641b8ec11 /drivers/dma/ioat/dma_v2.h
parent128f2d567f906d38b11d993d8d97b9b988848e26 (diff)
ioat3: hardware version 3.2 register / descriptor definitions
ioat3.2 adds raid5 and raid6 offload capabilities. Signed-off-by: Tom Picard <tom.s.picard@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/dma/ioat/dma_v2.h')
-rw-r--r--drivers/dma/ioat/dma_v2.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/drivers/dma/ioat/dma_v2.h b/drivers/dma/ioat/dma_v2.h
index 9baa3d6065ff..ed4bb82a283d 100644
--- a/drivers/dma/ioat/dma_v2.h
+++ b/drivers/dma/ioat/dma_v2.h
@@ -114,8 +114,32 @@ static inline u16 ioat2_xferlen_to_descs(struct ioat2_dma_chan *ioat, size_t len
114 return num_descs; 114 return num_descs;
115} 115}
116 116
117/**
118 * struct ioat_ring_ent - wrapper around hardware descriptor
119 * @hw: hardware DMA descriptor (for memcpy)
120 * @fill: hardware fill descriptor
121 * @xor: hardware xor descriptor
122 * @xor_ex: hardware xor extension descriptor
123 * @pq: hardware pq descriptor
124 * @pq_ex: hardware pq extension descriptor
125 * @pqu: hardware pq update descriptor
126 * @raw: hardware raw (un-typed) descriptor
127 * @txd: the generic software descriptor for all engines
128 * @len: total transaction length for unmap
129 * @id: identifier for debug
130 */
131
117struct ioat_ring_ent { 132struct ioat_ring_ent {
118 struct ioat_dma_descriptor *hw; 133 union {
134 struct ioat_dma_descriptor *hw;
135 struct ioat_fill_descriptor *fill;
136 struct ioat_xor_descriptor *xor;
137 struct ioat_xor_ext_descriptor *xor_ex;
138 struct ioat_pq_descriptor *pq;
139 struct ioat_pq_ext_descriptor *pq_ex;
140 struct ioat_pq_update_descriptor *pqu;
141 struct ioat_raw_descriptor *raw;
142 };
119 struct dma_async_tx_descriptor txd; 143 struct dma_async_tx_descriptor txd;
120 size_t len; 144 size_t len;
121 #ifdef DEBUG 145 #ifdef DEBUG