[PATCH] clk: rs9: restore cache_only on regcache_sync() failure in resume

phucduc.bui@gmail.com posted 1 patch 14 hours ago
drivers/clk/clk-renesas-pcie.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
[PATCH] clk: rs9: restore cache_only on regcache_sync() failure in resume
Posted by phucduc.bui@gmail.com 14 hours ago
From: bui duc phuc <phucduc.bui@gmail.com>

If regcache_sync() fails in rs9_resume(), the function only logs the
error, leaving regmap with cache_only disabled even though the register
cache has not been synchronized with the hardware.
Re-enable cache_only on failure to restore the state established by
rs9_suspend().

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
---
 drivers/clk/clk-renesas-pcie.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/clk-renesas-pcie.c b/drivers/clk/clk-renesas-pcie.c
index 2f6d80ee77cc..a2d7417e05ef 100644
--- a/drivers/clk/clk-renesas-pcie.c
+++ b/drivers/clk/clk-renesas-pcie.c
@@ -370,8 +370,10 @@ static int rs9_resume(struct device *dev)
 
 	regcache_cache_only(rs9->regmap, false);
 	ret = regcache_sync(rs9->regmap);
-	if (ret)
+	if (ret) {
+		regcache_cache_only(rs9->regmap, true);
 		dev_err(dev, "Failed to restore register map: %d\n", ret);
+	}
 	return ret;
 }
 
-- 
2.43.0