diff options
| author | bui duc phuc <phucduc.bui@gmail.com> | 2026-07-21 17:25:58 +0700 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-07-23 17:27:46 +0100 |
| commit | 2df329044c614fce2d0f4f46ddba276ec3aa4ae5 (patch) | |
| tree | 7f24ac922dba83d34725a0cc6692ae25a6ecf194 | |
| parent | 32ac6377cec13e0b1727507cf6cd9ff808a81e42 (diff) | |
| download | linux-next-2df329044c614fce2d0f4f46ddba276ec3aa4ae5.tar.gz linux-next-2df329044c614fce2d0f4f46ddba276ec3aa4ae5.zip | |
ASoC: codecs: rt721-sdca-sdw: Simplify regcache error handling in resume
Calling regcache_mark_dirty() on error is redundant as regcache_sync()
retains dirty state on failure, and any write in cache_only mode marks
the cache dirty anyway.
Restore cache_only directly on error for active regmaps and drop the
redundant regcache_mark_dirty() calls. This also removes goto labels
to prepare for guard cleanup.
Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
Link: https://patch.msgid.link/20260721102600.523199-28-phucduc.bui@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
| -rw-r--r-- | sound/soc/codecs/rt721-sdca-sdw.c | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/sound/soc/codecs/rt721-sdca-sdw.c b/sound/soc/codecs/rt721-sdca-sdw.c index 6e27e761afb6..6411df4eede7 100644 --- a/sound/soc/codecs/rt721-sdca-sdw.c +++ b/sound/soc/codecs/rt721-sdca-sdw.c @@ -511,22 +511,20 @@ static int rt721_sdca_dev_resume(struct device *dev) regcache_cache_only(rt721->regmap, false); ret = regcache_sync(rt721->regmap); - if (ret) - goto err_sync; + if (ret) { + regcache_cache_only(rt721->regmap, true); + return ret; + } regcache_cache_only(rt721->mbq_regmap, false); ret = regcache_sync(rt721->mbq_regmap); - if (ret) - goto err_sync; + if (ret) { + regcache_cache_only(rt721->mbq_regmap, true); + regcache_cache_only(rt721->regmap, true); + return ret; + } return 0; - -err_sync: - regcache_cache_only(rt721->regmap, true); - regcache_cache_only(rt721->mbq_regmap, true); - regcache_mark_dirty(rt721->regmap); - regcache_mark_dirty(rt721->mbq_regmap); - return ret; } static const struct dev_pm_ops rt721_sdca_pm = { |
