[PATCH v3 26/26] crypto: rockchip: use read_poll_timeout

Corentin Labbe
2022-03-21T20:10:19Z

Use read_poll_timeout instead of open coding it.

Signed-off-by: Corentin Labbe <clabbe@baylibre.com>
---
drivers/crypto/rockchip/rk3288_crypto_ahash.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/rockchip/rk3288_crypto_ahash.c b/drivers/crypto/rockchip/rk3288_crypto_ahash.c
index 1d20f58275f0..0ea47f50607e 100644
--- a/drivers/crypto/rockchip/rk3288_crypto_ahash.c
+++ b/drivers/crypto/rockchip/rk3288_crypto_ahash.c
@@ -9,6 +9,7 @@
* Some ideas are from marvell/cesa.c and s5p-sss.c driver.
*/
#include <linux/device.h>
+#include <linux/iopoll.h>
#include <asm/unaligned.h>
#include "rk3288_crypto.h"

@@ -314,8 +315,7 @@ static int rk_hash_run(struct crypto_engine *engine, void *breq)
* efficiency, and make it response quickly when dma
* complete.
*/
- while (!readl(reg + RK_CRYPTO_HASH_STS))
- udelay(10);
+ read_poll_timeout(readl, v, v == 0, 10, 1000, false, reg + RK_CRYPTO_HASH_STS);

for (i = 0; i < crypto_ahash_digestsize(tfm) / 4; i++) {
v = readl(reg + RK_CRYPTO_HASH_DOUT_0 + i * 4);
--
2.34.1