Revert "regmap: Allow installing custom reg_update_bits function"
[linux-2.6-block.git] / drivers / base / regmap / regmap.c
index 70387c9f281b8456a66167a3fa6898df691b7fe4..afaf56200674a29517678af763bc9a084659224b 100644 (file)
@@ -619,7 +619,6 @@ struct regmap *__regmap_init(struct device *dev,
                goto skip_format_initialization;
        } else {
                map->reg_read  = _regmap_bus_read;
-               map->reg_update_bits = bus->reg_update_bits;
        }
 
        reg_endian = regmap_get_reg_endian(bus, config);
@@ -2510,30 +2509,6 @@ static int _regmap_update_bits(struct regmap *map, unsigned int reg,
        int ret;
        unsigned int tmp, orig;
 
-       if (map->reg_update_bits) {
-               ret = map->reg_update_bits(map->bus_context, reg, mask, val,
-                                          change, force_write);
-               if (ret != 0)
-                       return ret;
-
-               /* Fix up the cache by read/modify/write */
-               if (!map->cache_bypass && !map->defer_caching) {
-                       ret = regcache_read(map, reg, &orig);
-                       if (ret != 0)
-                               return ret;
-
-                       tmp = orig & ~mask;
-                       tmp |= val & mask;
-
-                       ret = regcache_write(map, reg, tmp);
-                       if (ret != 0)
-                               return ret;
-                       if (map->cache_only)
-                               map->cache_dirty = true;
-               }
-               return ret;
-       }
-
        ret = _regmap_read(map, reg, &orig);
        if (ret != 0)
                return ret;