regmap: merge regmap_field_write() into macro
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Mon, 15 Feb 2016 05:24:15 +0000 (05:24 +0000)
committerMark Brown <broonie@kernel.org>
Fri, 19 Feb 2016 16:15:56 +0000 (01:15 +0900)
This patch merges regmap_field_write() into macro
by using regmap_field_update_bits_base().

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/base/regmap/regmap.c
include/linux/regmap.h

index e534105..228dce2 100644 (file)
@@ -1716,22 +1716,6 @@ int regmap_field_update_bits_base(struct regmap_field *field,
 }
 EXPORT_SYMBOL_GPL(regmap_field_update_bits_base);
 
-/**
- * regmap_field_write(): Write a value to a single register field
- *
- * @field: Register field to write to
- * @val: Value to be written
- *
- * A value of zero will be returned on success, a negative errno will
- * be returned in error cases.
- */
-int regmap_field_write(struct regmap_field *field, unsigned int val)
-{
-       return regmap_update_bits(field->regmap, field->reg,
-                               field->mask, val << field->shift);
-}
-EXPORT_SYMBOL_GPL(regmap_field_write);
-
 /**
  * regmap_field_update_bits(): Perform a read/modify/write cycle
  *                              on the register field
index 23bf765..13e9ebd 100644 (file)
@@ -74,6 +74,9 @@ struct reg_sequence {
 #define        regmap_update_bits_check_async(map, reg, mask, val, change)\
        regmap_update_bits_base(map, reg, mask, val, change, true, false)
 
+#define        regmap_field_write(field, val) \
+       regmap_field_update_bits_base(field, ~0, val, NULL, false, false)
+
 #ifdef CONFIG_REGMAP
 
 enum regmap_endian {
@@ -772,7 +775,6 @@ struct regmap_field *devm_regmap_field_alloc(struct device *dev,
 void devm_regmap_field_free(struct device *dev,        struct regmap_field *field);
 
 int regmap_field_read(struct regmap_field *field, unsigned int *val);
-int regmap_field_write(struct regmap_field *field, unsigned int val);
 int regmap_field_update_bits_base(struct regmap_field *field,
                                  unsigned int mask, unsigned int val,
                                  bool *change, bool async, bool force);