]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
mfd: arizona: Use new regmap features for manual register patch
authorCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Tue, 25 Feb 2014 13:45:52 +0000 (13:45 +0000)
committerMark Brown <broonie@linaro.org>
Tue, 25 Feb 2014 23:58:42 +0000 (08:58 +0900)
commit1c18d2ca104c36fc2ce147cce053c62f61d2ea68
tree42181eb461f017fbe2177c5334ddc692a102115a
parent6bf13103b2dbf09d32a0da2e732b6196522c1462
mfd: arizona: Use new regmap features for manual register patch

On the wm5102 the register patches are applied manually, rather than by
the regmap core. This application is wrapped in calls to
regcache_cache_bypass. However, this is dangerous as other threads may
be accessing the hardware at the same time as the pm_runtime operations
and if they do so during the period whilst cache_bypass is enabled those
writes will miss the cache when they shouldn't.

Apply the register patch using the new regmap_multi_reg_write_bypassed
function to avoid this problem. Also remove the call to
regcache_cache_bypass from the hardware patch application as it is
unneeded there and creates a similar window for writes to miss the
cache.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/mfd/arizona-core.c
drivers/mfd/wm5102-tables.c