dmadevices: dma_sync_wait undefined

dma_sync_wait is declared regardless of whether CONFIG_DMA_ENGINE is
enabled, but calling the function without CONFIG_DMA_ENGINE enabled
results in the following gcc error.
ERROR: "dma_sync_wait" [drivers/ntb/ntb.ko] undefined!

To get around this, declare dma_sync_wait as an inline function if
CONFIG_DMA_ENGINE is undefined.

Signed-off-by: Jon Mason <jon.mason@intel.com>
ioat: add DMA_PRIVATE capabilities flag

Set the DMA_PRIVATE dma_transaction_type in the capability mask.  This
enables the ability to get an exclusive ioatdma DMA channel for any
devices that requests one via the dma_request_channel function call.

Signed-off-by: Jon Mason <jon.mason@intel.com>
ioat: device control support

Add DMA device control support in the ioatdma driver.  This patch only
provides support for the DMA_TERMINATE_ALL operation, which will
terminate all ongoing transfers on a given channel.  This allows DMA
engine clients to call into the ioat driver and issue the command.  The
driver does this by quiescing the channel, then clearing any pending
transfers.

Signed-off-by: Jon Mason <jon.mason@intel.com>