From b22da3d8526a935aa31e086e63f60ff3246cb61c Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Sat, 09 Dec 2023 07:24:11 +0000
Subject: [PATCH] add stmac read mac form eeprom

---
 kernel/drivers/char/hw_random/rockchip-rng.c |   37 +++++++++++++++++++++----------------
 1 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/kernel/drivers/char/hw_random/rockchip-rng.c b/kernel/drivers/char/hw_random/rockchip-rng.c
index 93c7068..f7a3a7f 100644
--- a/kernel/drivers/char/hw_random/rockchip-rng.c
+++ b/kernel/drivers/char/hw_random/rockchip-rng.c
@@ -213,10 +213,12 @@
 
 	rk_rng_writel(rk_rng, reg_ctrl, CRYPTO_V1_CTRL);
 
-	ret = readl_poll_timeout(rk_rng->mem + CRYPTO_V1_CTRL, reg_ctrl,
-				 !(reg_ctrl & CRYPTO_V1_RNG_START),
-				 ROCKCHIP_POLL_PERIOD_US,
-				 ROCKCHIP_POLL_TIMEOUT_US);
+	ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
+				!(reg_ctrl & CRYPTO_V1_RNG_START),
+				ROCKCHIP_POLL_PERIOD_US,
+				ROCKCHIP_POLL_TIMEOUT_US, false,
+				rk_rng, CRYPTO_V1_CTRL);
+
 	if (ret < 0)
 		goto out;
 
@@ -249,10 +251,11 @@
 	rk_rng_writel(rk_rng, HIWORD_UPDATE(reg_ctrl, 0xffff, 0),
 		      CRYPTO_V2_RNG_CTL);
 
-	ret = readl_poll_timeout(rk_rng->mem + CRYPTO_V2_RNG_CTL, reg_ctrl,
-				 !(reg_ctrl & CRYPTO_V2_RNG_START),
-				 ROCKCHIP_POLL_PERIOD_US,
-				 ROCKCHIP_POLL_TIMEOUT_US);
+	ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
+				!(reg_ctrl & CRYPTO_V2_RNG_START),
+				ROCKCHIP_POLL_PERIOD_US,
+				ROCKCHIP_POLL_TIMEOUT_US, false,
+				rk_rng, CRYPTO_V2_RNG_CTL);
 	if (ret < 0)
 		goto out;
 
@@ -296,10 +299,11 @@
 		udelay(10);
 
 		/* wait for GENERATING and RESEEDING flag to clear */
-		readl_poll_timeout(rk_rng->mem + TRNG_V1_STAT, reg_ctrl,
-				   (reg_ctrl & mask) == TRNG_V1_STAT_SEEDED,
-				   ROCKCHIP_POLL_PERIOD_US,
-				   ROCKCHIP_POLL_TIMEOUT_US);
+		read_poll_timeout(rk_rng_readl, reg_ctrl,
+				  (reg_ctrl & mask) == TRNG_V1_STAT_SEEDED,
+				  ROCKCHIP_POLL_PERIOD_US,
+				  ROCKCHIP_POLL_TIMEOUT_US, false,
+				  rk_rng, TRNG_V1_STAT);
 	}
 
 	/* clear ISTAT flag because trng may auto reseeding when power on */
@@ -337,10 +341,11 @@
 	reg_ctrl = rk_rng_readl(rk_rng, TRNG_V1_ISTAT);
 	if (!(reg_ctrl & TRNG_V1_ISTAT_RAND_RDY)) {
 		/* wait RAND_RDY triggered */
-		ret = readl_poll_timeout(rk_rng->mem + TRNG_V1_ISTAT, reg_ctrl,
-					 (reg_ctrl & TRNG_V1_ISTAT_RAND_RDY),
-					 ROCKCHIP_POLL_PERIOD_US,
-					 ROCKCHIP_POLL_TIMEOUT_US);
+		ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
+					(reg_ctrl & TRNG_V1_ISTAT_RAND_RDY),
+					ROCKCHIP_POLL_PERIOD_US,
+					ROCKCHIP_POLL_TIMEOUT_US, false,
+					rk_rng, TRNG_V1_ISTAT);
 		if (ret < 0)
 			goto out;
 	}

--
Gitblit v1.6.2