crypto: atmel-aes - reduce latency of DMA completion
authorCyrille Pitchen <cyrille.pitchen@atmel.com>
Thu, 17 Dec 2015 16:48:44 +0000 (17:48 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 23 Dec 2015 10:19:53 +0000 (18:19 +0800)
atmel_aes_dma_callback() now directly calls the 'resume' callback instead
of scheduling the done task, which in turn only calls the very same
'resume' callback.

Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/atmel-aes.c

index 25dc7bd73532fd4aaaa9aa6b76e37a65ede88a96..8a2b3e81c0872d9136db0fa670fc255026631d76 100644 (file)
@@ -337,8 +337,8 @@ static void atmel_aes_dma_callback(void *data)
 {
        struct atmel_aes_dev *dd = data;
 
-       /* dma_lch_out - completed */
-       tasklet_schedule(&dd->done_task);
+       dd->is_async = true;
+       (void)dd->resume(dd);
 }
 
 static int atmel_aes_crypt_dma(struct atmel_aes_dev *dd,