]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
crypto: ccp - Assign DMA commands to the channel's CCP
authorGary R Hook <ghook@amd.com>
Fri, 10 Mar 2017 18:28:18 +0000 (12:28 -0600)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 16 Mar 2017 09:43:08 +0000 (17:43 +0800)
commit7c468447f40645fbf2a033dfdaa92b1957130d50
treec9cd9c1ca6222a07af4a3eff12651d7c0f81eadd
parent28b62b1458685d8f68f67d9b2d511bf8fa32b746
crypto: ccp - Assign DMA commands to the channel's CCP

The CCP driver generally uses a round-robin approach when
assigning operations to available CCPs. For the DMA engine,
however, the DMA mappings of the SGs are associated with a
specific CCP. When an IOMMU is enabled, the IOMMU is
programmed based on this specific device.

If the DMA operations are not performed by that specific
CCP then addressing errors and I/O page faults will occur.

Update the CCP driver to allow a specific CCP device to be
requested for an operation and use this in the DMA engine
support.

Cc: <stable@vger.kernel.org> # 4.9.x-
Signed-off-by: Gary R Hook <gary.hook@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/ccp/ccp-dev.c
drivers/crypto/ccp/ccp-dmaengine.c
include/linux/ccp.h