diff options
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/regmap/regcache.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c index ce2034c10ffb..9c6a5c13f1da 100644 --- a/drivers/base/regmap/regcache.c +++ b/drivers/base/regmap/regcache.c | |||
@@ -269,6 +269,9 @@ int regcache_sync(struct regmap *map) | |||
269 | name = map->cache_ops->name; | 269 | name = map->cache_ops->name; |
270 | trace_regcache_sync(map->dev, name, "start"); | 270 | trace_regcache_sync(map->dev, name, "start"); |
271 | 271 | ||
272 | if (!map->cache_dirty) | ||
273 | goto out; | ||
274 | |||
272 | /* Apply any patch first */ | 275 | /* Apply any patch first */ |
273 | for (i = 0; i < map->patch_regs; i++) { | 276 | for (i = 0; i < map->patch_regs; i++) { |
274 | ret = _regmap_write(map, map->patch[i].reg, map->patch[i].def); | 277 | ret = _regmap_write(map, map->patch[i].reg, map->patch[i].def); |
@@ -279,8 +282,6 @@ int regcache_sync(struct regmap *map) | |||
279 | } | 282 | } |
280 | } | 283 | } |
281 | 284 | ||
282 | if (!map->cache_dirty) | ||
283 | goto out; | ||
284 | if (map->cache_ops->sync) { | 285 | if (map->cache_ops->sync) { |
285 | ret = map->cache_ops->sync(map); | 286 | ret = map->cache_ops->sync(map); |
286 | } else { | 287 | } else { |