diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c index 876622453cd84558a9d874035a08ae3eb3ac576f..2d55b261f1c50db138aa0d59380590ea84128f63 100644 --- a/drivers/base/regmap/regcache.c +++ b/drivers/base/regmap/regcache.c @@ -281,6 +281,7 @@ EXPORT_SYMBOL_GPL(regcache_sync); void regcache_cache_only(struct regmap *map, bool enable) { mutex_lock(&map->lock); + WARN_ON(map->cache_bypass && enable); map->cache_only = enable; mutex_unlock(&map->lock); } @@ -300,6 +301,7 @@ EXPORT_SYMBOL_GPL(regcache_cache_only); void regcache_cache_bypass(struct regmap *map, bool enable) { mutex_lock(&map->lock); + WARN_ON(map->cache_only && enable); map->cache_bypass = enable; mutex_unlock(&map->lock); }