ASoC: fs210x: Make cache write through again during resume
authorMark Brown <broonie@kernel.org>
Wed, 15 Jul 2026 20:16:48 +0000 (21:16 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 16 Jul 2026 11:54:58 +0000 (12:54 +0100)
The fs210x driver currently puts the regmap cache into cache only mode
during suspend but at no point does it make it writable again, meaning
that device can't work after suspend other than basic powerup which
bypasses the cache.

Mark the cache as writable again when we resync the registers, it's not
clear to me that the cache only mode is needed at all but this is a
fairly minimal change.  Since this is setting a flag it's safe to do
even if the cache was not previously in cache only mode.

Reviewed-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://patch.msgid.link/20260715-asoc-fs210x-fix-resume-v1-1-dd81d9c62c05@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/fs210x.c

index 5f381fe..d794ff9 100644 (file)
@@ -607,6 +607,7 @@ tag_power_down:
 
        regcache_cache_bypass(fs210x->regmap, false);
        if (!ret) {
+               regcache_cache_only(fs210x->regmap, false);
                regcache_mark_dirty(fs210x->regmap);
                regcache_sync(fs210x->regmap);
                fs210x->is_inited = true;