Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

crypto: atmel-aes - correct usage of dma_sync_* API

The output buffer is used for CPU access, so
the API should be dma_sync_single_for_cpu which
makes the cache line invalid in order to reload
the value in memory.

Signed-off-by: Leilei Zhao <leilei.zhao@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Leilei Zhao and committed by
Herbert Xu
9cd22323 289b2623

+1 -1
+1 -1
drivers/crypto/atmel-aes.c
··· 627 627 dma_unmap_sg(dd->dev, dd->out_sg, 1, DMA_FROM_DEVICE); 628 628 dma_unmap_sg(dd->dev, dd->in_sg, 1, DMA_TO_DEVICE); 629 629 } else { 630 - dma_sync_single_for_device(dd->dev, dd->dma_addr_out, 630 + dma_sync_single_for_cpu(dd->dev, dd->dma_addr_out, 631 631 dd->dma_size, DMA_FROM_DEVICE); 632 632 633 633 /* copy data */