[PATCH] rockchip: efuse: fix rk3399 reading multiple values
John Keeping
john at metanate.com
Mon Apr 17 18:09:14 CEST 2023
Update rk3399 to match the pattern in the other device-specific
implementations to ensure the previous address is cleared when reading
multiple blocks.
Signed-off-by: John Keeping <john at metanate.com>
---
drivers/misc/rockchip-efuse.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/misc/rockchip-efuse.c b/drivers/misc/rockchip-efuse.c
index 2f96b79ea4..d302271239 100644
--- a/drivers/misc/rockchip-efuse.c
+++ b/drivers/misc/rockchip-efuse.c
@@ -207,8 +207,8 @@ static int rockchip_rk3399_efuse_read(struct udevice *dev, int offset,
udelay(1);
while (size--) {
- setbits_le32(efuse->base + EFUSE_CTRL,
- EFUSE_STROBE | RK3399_ADDR(offset++));
+ clrsetbits_le32(efuse->base + EFUSE_CTRL, RK3399_A_MASK,
+ EFUSE_STROBE | RK3399_ADDR(offset++));
udelay(1);
*buffer++ = readl(efuse->base + EFUSE_DOUT);
clrbits_le32(efuse->base + EFUSE_CTRL, EFUSE_STROBE);
--
2.40.0
More information about the U-Boot
mailing list