Skip to content

Commit a7d168d

Browse files
BuiDucPhucbroonie
authored andcommitted
regcache: Mark cache dirty if selector register rewrite fails
After a successful cache synchronization, regcache_sync() clears cache_dirty. If rewriting a selector register later fails, the cache and hardware become inconsistent while the cache still appears clean. Update cache_dirty to reflect the cache and hardware state when selector register rewriting fails. Signed-off-by: bui duc phuc <phucduc.bui@gmail.com> Link: https://patch.msgid.link/20260713050312.38729-3-phucduc.bui@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent 85da24a commit a7d168d

1 file changed

Lines changed: 1 addition & 0 deletions

File tree

drivers/base/regmap/regcache.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -465,6 +465,7 @@ int regcache_sync(struct regmap *map)
465465

466466
selector_ret = _regmap_write(map, this->selector_reg, i);
467467
if (selector_ret != 0) {
468+
map->cache_dirty = true;
468469
dev_err(map->dev, "Failed to write %x = %x: %d\n",
469470
this->selector_reg, i, selector_ret);
470471
break;

0 commit comments

Comments
 (0)