ioatdma: Adding support for 16 src PQ ops and super extended descriptors
authorDave Jiang <dave.jiang@intel.com>
Mon, 15 Apr 2013 17:25:56 +0000 (10:25 -0700)
committerVinod Koul <vinod.koul@intel.com>
Mon, 15 Apr 2013 17:16:15 +0000 (22:46 +0530)
commit7727eaa4490b7244934fe31f05e7329f30715267
tree32f34dec6650b20fcaa452930f655907cdd01ac3
parente0884772d323b745c65baa65df391b1c70829410
ioatdma: Adding support for 16 src PQ ops and super extended descriptors

v3.3 introduced 16 sources PQ operations. This also introduced super extended
descriptors to support the 16 srcs operations. This patch adds support for
the 16 sources ops and in turn adds the super extended descriptors for those
ops.

5 SED pools are created depending on the descriptor sizes. An SED can be a 64
bytes sized descriptor or larger and must be physically contiguous. A kmem
cache pool is created for allocating the software descriptor that manages the
hardware descriptor. The super extended descriptor will take place of extended
descriptor under certain operations and be "attached" to the op descriptor
during operation. This is a new feature for ioatdma v3.3.

Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Acked-by: Dan Williams <djbw@fb.com>
Acked-by: Dan Williams <djbw@fb.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/ioat/dma.h
drivers/dma/ioat/dma_v2.h
drivers/dma/ioat/dma_v3.c
drivers/dma/ioat/hw.h
drivers/dma/ioat/pci.c
drivers/dma/ioat/registers.h