diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2016-02-15 00:24:33 -0500 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-02-19 11:15:56 -0500 |
commit | 721ed64dda3774c619874866ca4f9a38ae6750af (patch) | |
tree | 8cffd1def42a87a51c366de67aeb315ff5fad56c | |
parent | 3674124b35894631f8f4d33ab041e713078bfd4b (diff) |
regmap: merge regmap_field_update_bits() into macro
This patch merges regmap_field_update_bits() 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>
-rw-r--r-- | drivers/base/regmap/regmap.c | 20 | ||||
-rw-r--r-- | include/linux/regmap.h | 4 |
2 files changed, 2 insertions, 22 deletions
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c index 228dce237658..606c9b53526b 100644 --- a/drivers/base/regmap/regmap.c +++ b/drivers/base/regmap/regmap.c | |||
@@ -1717,26 +1717,6 @@ int regmap_field_update_bits_base(struct regmap_field *field, | |||
1717 | EXPORT_SYMBOL_GPL(regmap_field_update_bits_base); | 1717 | EXPORT_SYMBOL_GPL(regmap_field_update_bits_base); |
1718 | 1718 | ||
1719 | /** | 1719 | /** |
1720 | * regmap_field_update_bits(): Perform a read/modify/write cycle | ||
1721 | * on the register field | ||
1722 | * | ||
1723 | * @field: Register field to write to | ||
1724 | * @mask: Bitmask to change | ||
1725 | * @val: Value to be written | ||
1726 | * | ||
1727 | * A value of zero will be returned on success, a negative errno will | ||
1728 | * be returned in error cases. | ||
1729 | */ | ||
1730 | int regmap_field_update_bits(struct regmap_field *field, unsigned int mask, unsigned int val) | ||
1731 | { | ||
1732 | mask = (mask << field->shift) & field->mask; | ||
1733 | |||
1734 | return regmap_update_bits(field->regmap, field->reg, | ||
1735 | mask, val << field->shift); | ||
1736 | } | ||
1737 | EXPORT_SYMBOL_GPL(regmap_field_update_bits); | ||
1738 | |||
1739 | /** | ||
1740 | * regmap_fields_write(): Write a value to a single register field with port ID | 1720 | * regmap_fields_write(): Write a value to a single register field with port ID |
1741 | * | 1721 | * |
1742 | * @field: Register field to write to | 1722 | * @field: Register field to write to |
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 13e9ebdea1c7..e525beeaa2c6 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h | |||
@@ -76,6 +76,8 @@ struct reg_sequence { | |||
76 | 76 | ||
77 | #define regmap_field_write(field, val) \ | 77 | #define regmap_field_write(field, val) \ |
78 | regmap_field_update_bits_base(field, ~0, val, NULL, false, false) | 78 | regmap_field_update_bits_base(field, ~0, val, NULL, false, false) |
79 | #define regmap_field_update_bits(field, mask, val)\ | ||
80 | regmap_field_update_bits_base(field, mask, val, NULL, false, false) | ||
79 | 81 | ||
80 | #ifdef CONFIG_REGMAP | 82 | #ifdef CONFIG_REGMAP |
81 | 83 | ||
@@ -778,8 +780,6 @@ int regmap_field_read(struct regmap_field *field, unsigned int *val); | |||
778 | int regmap_field_update_bits_base(struct regmap_field *field, | 780 | int regmap_field_update_bits_base(struct regmap_field *field, |
779 | unsigned int mask, unsigned int val, | 781 | unsigned int mask, unsigned int val, |
780 | bool *change, bool async, bool force); | 782 | bool *change, bool async, bool force); |
781 | int regmap_field_update_bits(struct regmap_field *field, | ||
782 | unsigned int mask, unsigned int val); | ||
783 | int regmap_fields_write(struct regmap_field *field, unsigned int id, | 783 | int regmap_fields_write(struct regmap_field *field, unsigned int id, |
784 | unsigned int val); | 784 | unsigned int val); |
785 | int regmap_fields_force_write(struct regmap_field *field, unsigned int id, | 785 | int regmap_fields_force_write(struct regmap_field *field, unsigned int id, |