summaryrefslogtreecommitdiff
path: root/drivers/crypto/ccp/ccp-dev.h
diff options
context:
space:
mode:
authorGary R Hook <gary.hook@amd.com>2017-03-23 20:53:30 +0300
committerHerbert Xu <herbert@gondor.apana.org.au>2017-03-24 16:51:34 +0300
commitefc989fce8703914bac091dcc4b8ff7a72ccf987 (patch)
tree6b76c798b51f90253eaf8ef1620d74f353b85edd /drivers/crypto/ccp/ccp-dev.h
parentde5540d088fe97ad583cc7d396586437b32149a5 (diff)
downloadlinux-efc989fce8703914bac091dcc4b8ff7a72ccf987.tar.xz
crypto: ccp - Make some CCP DMA channels private
The CCP registers its queues as channels capable of handling general DMA operations. The NTB driver will use DMA if directed, but as public channels can be reserved for use in asynchronous operations some channels should be held back as private. Since the public/private determination is handled at a device level, reserve the "other" (secondary) CCP channels as private. Add a module parameter that allows for override, to be applied to all channels on all devices. CC: <stable@vger.kernel.org> # 4.10.x- Signed-off-by: Gary R Hook <gary.hook@amd.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/ccp/ccp-dev.h')
-rw-r--r--drivers/crypto/ccp/ccp-dev.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/crypto/ccp/ccp-dev.h b/drivers/crypto/ccp/ccp-dev.h
index 2b5c01fade05..aa36f3f81860 100644
--- a/drivers/crypto/ccp/ccp-dev.h
+++ b/drivers/crypto/ccp/ccp-dev.h
@@ -179,6 +179,10 @@
/* ------------------------ General CCP Defines ------------------------ */
+#define CCP_DMA_DFLT 0x0
+#define CCP_DMA_PRIV 0x1
+#define CCP_DMA_PUB 0x2
+
#define CCP_DMAPOOL_MAX_SIZE 64
#define CCP_DMAPOOL_ALIGN BIT(5)
@@ -636,6 +640,7 @@ struct ccp_actions {
/* Structure to hold CCP version-specific values */
struct ccp_vdata {
const unsigned int version;
+ const unsigned int dma_chan_attr;
void (*setup)(struct ccp_device *);
const struct ccp_actions *perform;
const unsigned int bar;