Messages in this thread Patch in this message | | | From | Dimitris Papastamos <> | Subject | [PATCH 4/7] regmap: Save/restore the bypass state upon syncing | Date | Wed, 28 Sep 2011 11:43:44 +0100 |
| |
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com> --- drivers/base/regmap/regcache.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c index b843b5f..695802c 100644 --- a/drivers/base/regmap/regcache.c +++ b/drivers/base/regmap/regcache.c @@ -229,10 +229,13 @@ int regcache_sync(struct regmap *map) unsigned int val; unsigned int i; const char *name; + unsigned int bypass; BUG_ON(!map->cache_ops); mutex_lock(&map->sync_lock); + /* Remember the initial bypass state */ + bypass = map->cache_bypass; dev_dbg(map->dev, "Syncing %s cache\n", map->cache_ops->name); name = map->cache_ops->name; @@ -257,6 +260,8 @@ int regcache_sync(struct regmap *map) } out: trace_regcache_sync(map->dev, name, "stop"); + /* Restore the bypass state */ + map->cache_bypass = bypass; mutex_unlock(&map->sync_lock); return ret; -- 1.7.6.4
| |