diff options
author | Mark Brown <broonie@kernel.org> | 2022-06-15 20:05:36 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-06-15 20:06:48 +0300 |
commit | 6735988b140b558044107f96e62c231d8a8c7b9b (patch) | |
tree | bd1a36d8859d571053974f248ef6bf1ff857f108 /include | |
parent | bf29a87cc65aa3fd138af8b04cd6bb12e51cdb2b (diff) | |
parent | b23662406b1b225847b964e4549a5718c45f20d6 (diff) | |
download | linux-6735988b140b558044107f96e62c231d8a8c7b9b.tar.xz |
ASoC: Add regmap_field helpers for simple bit operations
Merge series from Li Chen <lchen.firstlove@zohomail.com>
This series proposes to add simple bit operations for setting, clearing
and testing specific bits with regmap_field and uses them in one of the
sunxi drivers.
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/regmap.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 8952fa3d0d59..d5b08f4f0dc0 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h @@ -1336,6 +1336,22 @@ static inline int regmap_field_update_bits(struct regmap_field *field, NULL, false, false); } +static inline int regmap_field_set_bits(struct regmap_field *field, + unsigned int bits) +{ + return regmap_field_update_bits_base(field, bits, bits, NULL, false, + false); +} + +static inline int regmap_field_clear_bits(struct regmap_field *field, + unsigned int bits) +{ + return regmap_field_update_bits_base(field, bits, 0, NULL, false, + false); +} + +int regmap_field_test_bits(struct regmap_field *field, unsigned int bits); + static inline int regmap_field_force_update_bits(struct regmap_field *field, unsigned int mask, unsigned int val) @@ -1769,6 +1785,27 @@ regmap_field_force_update_bits(struct regmap_field *field, return -EINVAL; } +static inline int regmap_field_set_bits(struct regmap_field *field, + unsigned int bits) +{ + WARN_ONCE(1, "regmap API is disabled"); + return -EINVAL; +} + +static inline int regmap_field_clear_bits(struct regmap_field *field, + unsigned int bits) +{ + WARN_ONCE(1, "regmap API is disabled"); + return -EINVAL; +} + +static inline int regmap_field_test_bits(struct regmap_field *field, + unsigned int bits) +{ + WARN_ONCE(1, "regmap API is disabled"); + return -EINVAL; +} + static inline int regmap_fields_write(struct regmap_field *field, unsigned int id, unsigned int val) { |