aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/crypto/caam
diff options
context:
space:
mode:
authorKim Phillips <kim.phillips@freescale.com>2012-06-22 20:42:36 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2012-06-27 02:42:03 -0400
commita68d2595876c7cc56f122572fa0a3465d438fefc (patch)
tree1d29d908b19702edec03b5d50c6519fd2d6ebbcb /drivers/crypto/caam
parent70d793cc30a129d974363b4f3c22c9db6bbb18ed (diff)
crypto: caam - fix input job ring element dma mapping size
SEC4 h/w gets configured in 32- vs. 36-bit physical addressing modes depending on the size of dma_addr_t, which is not always equal to sizeof(u32 *). Also fixed alignment of a dma_unmap call whilst in there. Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/caam')
-rw-r--r--drivers/crypto/caam/jr.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/crypto/caam/jr.c b/drivers/crypto/caam/jr.c
index 340fa322c0f0..6ce4c41c8634 100644
--- a/drivers/crypto/caam/jr.c
+++ b/drivers/crypto/caam/jr.c
@@ -376,7 +376,7 @@ static int caam_jr_init(struct device *dev)
376 376
377 /* Setup rings */ 377 /* Setup rings */
378 inpbusaddr = dma_map_single(dev, jrp->inpring, 378 inpbusaddr = dma_map_single(dev, jrp->inpring,
379 sizeof(u32 *) * JOBR_DEPTH, 379 sizeof(dma_addr_t) * JOBR_DEPTH,
380 DMA_BIDIRECTIONAL); 380 DMA_BIDIRECTIONAL);
381 if (dma_mapping_error(dev, inpbusaddr)) { 381 if (dma_mapping_error(dev, inpbusaddr)) {
382 dev_err(dev, "caam_jr_init(): can't map input ring\n"); 382 dev_err(dev, "caam_jr_init(): can't map input ring\n");
@@ -391,9 +391,9 @@ static int caam_jr_init(struct device *dev)
391 DMA_BIDIRECTIONAL); 391 DMA_BIDIRECTIONAL);
392 if (dma_mapping_error(dev, outbusaddr)) { 392 if (dma_mapping_error(dev, outbusaddr)) {
393 dev_err(dev, "caam_jr_init(): can't map output ring\n"); 393 dev_err(dev, "caam_jr_init(): can't map output ring\n");
394 dma_unmap_single(dev, inpbusaddr, 394 dma_unmap_single(dev, inpbusaddr,
395 sizeof(u32 *) * JOBR_DEPTH, 395 sizeof(dma_addr_t) * JOBR_DEPTH,
396 DMA_BIDIRECTIONAL); 396 DMA_BIDIRECTIONAL);
397 kfree(jrp->inpring); 397 kfree(jrp->inpring);
398 kfree(jrp->outring); 398 kfree(jrp->outring);
399 kfree(jrp->entinfo); 399 kfree(jrp->entinfo);
@@ -447,7 +447,7 @@ int caam_jr_shutdown(struct device *dev)
447 dma_unmap_single(dev, outbusaddr, 447 dma_unmap_single(dev, outbusaddr,
448 sizeof(struct jr_outentry) * JOBR_DEPTH, 448 sizeof(struct jr_outentry) * JOBR_DEPTH,
449 DMA_BIDIRECTIONAL); 449 DMA_BIDIRECTIONAL);
450 dma_unmap_single(dev, inpbusaddr, sizeof(u32 *) * JOBR_DEPTH, 450 dma_unmap_single(dev, inpbusaddr, sizeof(dma_addr_t) * JOBR_DEPTH,
451 DMA_BIDIRECTIONAL); 451 DMA_BIDIRECTIONAL);
452 kfree(jrp->outring); 452 kfree(jrp->outring);
453 kfree(jrp->inpring); 453 kfree(jrp->inpring);