summaryrefslogtreecommitdiffstats
path: root/include/linux/regmap.h
diff options
context:
space:
mode:
authorAshish Jangam2012-05-01 00:23:40 +0200
committerMark Brown2012-05-01 00:29:56 +0200
commit2e33caf16f7a1903d226ef7f9f5ec6a234fee18e (patch)
treeb557691a1197a035eee85df52d4eb05bcb9f02fb /include/linux/regmap.h
parentregmap: fix compile errors in regmap-irq.c due to stride changes (diff)
downloadkernel-qcow2-linux-2e33caf16f7a1903d226ef7f9f5ec6a234fee18e.tar.gz
kernel-qcow2-linux-2e33caf16f7a1903d226ef7f9f5ec6a234fee18e.tar.xz
kernel-qcow2-linux-2e33caf16f7a1903d226ef7f9f5ec6a234fee18e.zip
regmap: Converts group operation into single read write operations
Some devices does not support bulk read and write operations, for them we have series of single write and read operations. Signed-off-by: Anthony Olech <Anthony.Olech@diasemi.com> Signed-off-by: Ashish Jangam <ashish.jangam@kpitcummins.com> [Fixed coding style, don't check use_single_rw before assign --broonie ] Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/linux/regmap.h')
-rw-r--r--include/linux/regmap.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h
index 0258bcd6258d..ae797b142aa8 100644
--- a/include/linux/regmap.h
+++ b/include/linux/regmap.h
@@ -76,6 +76,9 @@ struct reg_default {
* @write_flag_mask: Mask to be set in the top byte of the register when doing
* a write. If both read_flag_mask and write_flag_mask are
* empty the regmap_bus default masks are used.
+ * @use_single_rw: If set, converts the bulk read and write operations into
+ * a series of single read and write operations. This is useful
+ * for device that does not support bulk read and write.
*
* @cache_type: The actual cache type.
* @reg_defaults_raw: Power on reset values for registers (for use with
@@ -104,6 +107,8 @@ struct regmap_config {
u8 read_flag_mask;
u8 write_flag_mask;
+
+ bool use_single_rw;
};
typedef int (*regmap_hw_write)(void *context, const void *data,