Merge remote-tracking branches 'regmap/fix/i2c' and 'regmap/fix/volatile' into regmap...
[muen/linux.git] / drivers / base / regmap / regmap.c
index ee302ccdfbc8d366fec3f39574a4c28462b20240..2339b98f1b6e49d70906215ad7c989a98be009c7 100644 (file)
@@ -99,7 +99,7 @@ bool regmap_cached(struct regmap *map, unsigned int reg)
        int ret;
        unsigned int val;
 
-       if (map->cache == REGCACHE_NONE)
+       if (map->cache_type == REGCACHE_NONE)
                return false;
 
        if (!map->cache_ops)
@@ -174,7 +174,7 @@ static bool regmap_volatile_range(struct regmap *map, unsigned int reg,
        unsigned int i;
 
        for (i = 0; i < num; i++)
-               if (!regmap_volatile(map, reg + i))
+               if (!regmap_volatile(map, reg + regmap_get_offset(map, i)))
                        return false;
 
        return true;
@@ -1831,7 +1831,7 @@ int regmap_raw_write(struct regmap *map, unsigned int reg,
                return -EINVAL;
        if (val_len % map->format.val_bytes)
                return -EINVAL;
-       if (map->max_raw_write && map->max_raw_write > val_len)
+       if (map->max_raw_write && map->max_raw_write < val_len)
                return -E2BIG;
 
        map->lock(map->lock_arg);