diff options
author | Dimitris Papastamos <dp@opensource.wolfsonmicro.com> | 2011-09-29 09:36:28 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-09-30 08:57:47 -0400 |
commit | ac77a765cb6e3b5aa41c186ad9f37db7fdad7dbe (patch) | |
tree | 8a5c8df6dea4899dfff26eafe7027b1349be23a6 /drivers/base | |
parent | 6eb0f5e0154facfe4f0acdb9f474cde773319efc (diff) |
regmap: Ensure we scream if we enable cache bypass/only at the same time
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/regmap/regcache.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c index 876622453cd8..2d55b261f1c5 100644 --- a/drivers/base/regmap/regcache.c +++ b/drivers/base/regmap/regcache.c | |||
@@ -281,6 +281,7 @@ EXPORT_SYMBOL_GPL(regcache_sync); | |||
281 | void regcache_cache_only(struct regmap *map, bool enable) | 281 | void regcache_cache_only(struct regmap *map, bool enable) |
282 | { | 282 | { |
283 | mutex_lock(&map->lock); | 283 | mutex_lock(&map->lock); |
284 | WARN_ON(map->cache_bypass && enable); | ||
284 | map->cache_only = enable; | 285 | map->cache_only = enable; |
285 | mutex_unlock(&map->lock); | 286 | mutex_unlock(&map->lock); |
286 | } | 287 | } |
@@ -300,6 +301,7 @@ EXPORT_SYMBOL_GPL(regcache_cache_only); | |||
300 | void regcache_cache_bypass(struct regmap *map, bool enable) | 301 | void regcache_cache_bypass(struct regmap *map, bool enable) |
301 | { | 302 | { |
302 | mutex_lock(&map->lock); | 303 | mutex_lock(&map->lock); |
304 | WARN_ON(map->cache_only && enable); | ||
303 | map->cache_bypass = enable; | 305 | map->cache_bypass = enable; |
304 | mutex_unlock(&map->lock); | 306 | mutex_unlock(&map->lock); |
305 | } | 307 | } |