summaryrefslogtreecommitdiff
path: root/include/linux/regmap.h
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2020-09-28 22:50:47 +0300
committerMark Brown <broonie@kernel.org>2020-09-28 22:50:47 +0300
commitd05199af72cbb97b6a293b632ffdd09c4757d5fe (patch)
tree944d77d383be4f7ecd7b3664b58e4f0b30f5133b /include/linux/regmap.h
parent2defc3fa18a68963a330187f5386968e50832d06 (diff)
parentea470b82f205fc1b0b5276575da519bb7d86db25 (diff)
downloadlinux-d05199af72cbb97b6a293b632ffdd09c4757d5fe.tar.xz
Merge tag 'regmap-field-bulk-api' into regmap-5.10
regmap: Add a bulk field API Useful for devices with many fields.
Diffstat (limited to 'include/linux/regmap.h')
-rw-r--r--include/linux/regmap.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h
index 0c49d59168b5..a35ec0a0d6e0 100644
--- a/include/linux/regmap.h
+++ b/include/linux/regmap.h
@@ -1189,6 +1189,17 @@ struct regmap_field *devm_regmap_field_alloc(struct device *dev,
struct regmap *regmap, struct reg_field reg_field);
void devm_regmap_field_free(struct device *dev, struct regmap_field *field);
+int regmap_field_bulk_alloc(struct regmap *regmap,
+ struct regmap_field **rm_field,
+ struct reg_field *reg_field,
+ int num_fields);
+void regmap_field_bulk_free(struct regmap_field *field);
+int devm_regmap_field_bulk_alloc(struct device *dev, struct regmap *regmap,
+ struct regmap_field **field,
+ struct reg_field *reg_field, int num_fields);
+void devm_regmap_field_bulk_free(struct device *dev,
+ struct regmap_field *field);
+
int regmap_field_read(struct regmap_field *field, unsigned int *val);
int regmap_field_update_bits_base(struct regmap_field *field,
unsigned int mask, unsigned int val,