ioat2+: add fence support
authorDan Williams <dan.j.williams@intel.com>
Wed, 9 Sep 2009 00:42:53 +0000 (17:42 -0700)
committerDan Williams <dan.j.williams@intel.com>
Wed, 9 Sep 2009 00:42:53 +0000 (17:42 -0700)
commit128f2d567f906d38b11d993d8d97b9b988848e26
tree523fd4b737bd44bccddb2425ae0b16f78a819e19
parent83544ae9f3991bfc7d5e0fe9a3008cd05a8d57b7
ioat2+: add fence support

In preparation for adding more operation types to the ioat3 path the
driver needs to honor the DMA_PREP_FENCE flag.  For example the async_tx api
will hand xor->memcpy->xor chains to the driver with the 'fence' flag set on
the first xor and the memcpy operation.  This flag in turn sets the 'fence'
flag in the descriptor control field telling the hardware that future
descriptors in the chain depend on the result of the current descriptor, so
wait for all writes to complete before starting the next operation.

Note that ioat1 does not prefetch the descriptor chain, so does not
require/support fenced operations.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/dma/ioat/dma_v2.c