regmap: Modify map->cache_bypass directly

In preperation for the upcoming patches, modify map->cache_bypass
directly.  The helper functions will grab an exclusive lock.  Because
we'll have acquired the same lock we need to avoid a deadlock.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
Dimitris Papastamos 2011-09-28 11:43:42 +01:00 committed by Mark Brown
parent a40c282362
commit ec8a365fe6

View File

@ -241,9 +241,9 @@ int regcache_sync(struct regmap *map)
ret = regcache_read(map, i, &val); ret = regcache_read(map, i, &val);
if (ret < 0) if (ret < 0)
goto out; goto out;
regcache_cache_bypass(map, true); map->cache_bypass = 1;
ret = regmap_write(map, i, val); ret = regmap_write(map, i, val);
regcache_cache_bypass(map, false); map->cache_bypass = 0;
if (ret < 0) if (ret < 0)
goto out; goto out;
dev_dbg(map->dev, "Synced register %#x, value %#x\n", dev_dbg(map->dev, "Synced register %#x, value %#x\n",