regmap: core: Warn on invalid operation combinations
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 13 Mar 2013 19:18:13 +0000 (19:18 +0000)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 26 Mar 2013 19:17:11 +0000 (19:17 +0000)
Don't grind to a screaming halt, just generate a warning.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/base/regmap/regmap.c

index aff5a8b73947fb3b6ccd087b8fc8cd8eea95af9c..44a45cf0644bd9673a37d6463d0de55e97db0d43 100644 (file)
@@ -950,7 +950,7 @@ static int _regmap_raw_write(struct regmap *map, unsigned int reg,
        size_t len;
        int i;
 
-       BUG_ON(!map->bus);
+       WARN_ON(!map->bus);
 
        /* Check for unwritable registers before we start */
        if (map->writeable_reg)
@@ -1104,7 +1104,7 @@ static int _regmap_bus_formatted_write(void *context, unsigned int reg,
        struct regmap_range_node *range;
        struct regmap *map = context;
 
-       BUG_ON(!map->bus || !map->format.format_write);
+       WARN_ON(!map->bus || !map->format.format_write);
 
        range = _regmap_range_lookup(map, reg);
        if (range) {
@@ -1130,7 +1130,7 @@ static int _regmap_bus_raw_write(void *context, unsigned int reg,
 {
        struct regmap *map = context;
 
-       BUG_ON(!map->bus || !map->format.format_val);
+       WARN_ON(!map->bus || !map->format.format_val);
 
        map->format.format_val(map->work_buf + map->format.reg_bytes
                               + map->format.pad_bytes, val, 0);
@@ -1356,7 +1356,7 @@ static int _regmap_raw_read(struct regmap *map, unsigned int reg, void *val,
        u8 *u8 = map->work_buf;
        int ret;
 
-       BUG_ON(!map->bus);
+       WARN_ON(!map->bus);
 
        range = _regmap_range_lookup(map, reg);
        if (range) {
@@ -1411,7 +1411,7 @@ static int _regmap_read(struct regmap *map, unsigned int reg,
        int ret;
        void *context = _regmap_map_get_context(map);
 
-       BUG_ON(!map->reg_read);
+       WARN_ON(!map->reg_read);
 
        if (!map->cache_bypass) {
                ret = regcache_read(map, reg, val);