diff options
author | Gary R Hook <gary.hook@amd.com> | 2017-01-27 16:28:45 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-02-14 18:25:33 -0500 |
commit | 1105ccf25118894ffde5b50d43c52b9e39fe3fc9 (patch) | |
tree | 1248c4d4271408bfae459817a2d4f9d04cd90250 | |
parent | d7aa88a14eb059cdc9c82206cd3ee8ccb6f62ee6 (diff) |
crypto: ccp - Fix DMA operations when IOMMU is enabled
commit 500c0106e638e08c2c661c305ed57d6b67e10908 upstream.
An I/O page fault occurs when the IOMMU is enabled on a
system that supports the v5 CCP. DMA operations use a
Request ID value that does not match what is expected by
the IOMMU, resulting in the I/O page fault. Setting the
Request ID value to 0 corrects this issue.
Signed-off-by: Gary R Hook <gary.hook@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/crypto/ccp/ccp-dev-v5.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/crypto/ccp/ccp-dev-v5.c b/drivers/crypto/ccp/ccp-dev-v5.c index faf3cb3ddce2..a388bf2d67f4 100644 --- a/drivers/crypto/ccp/ccp-dev-v5.c +++ b/drivers/crypto/ccp/ccp-dev-v5.c | |||
@@ -955,7 +955,7 @@ static irqreturn_t ccp5_irq_handler(int irq, void *data) | |||
955 | static void ccp5_config(struct ccp_device *ccp) | 955 | static void ccp5_config(struct ccp_device *ccp) |
956 | { | 956 | { |
957 | /* Public side */ | 957 | /* Public side */ |
958 | iowrite32(0x00001249, ccp->io_regs + CMD5_REQID_CONFIG_OFFSET); | 958 | iowrite32(0x0, ccp->io_regs + CMD5_REQID_CONFIG_OFFSET); |
959 | } | 959 | } |
960 | 960 | ||
961 | static void ccp5other_config(struct ccp_device *ccp) | 961 | static void ccp5other_config(struct ccp_device *ccp) |