diff options
author | Markus Pargmann <mpa@pengutronix.de> | 2015-08-30 09:33:53 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-08-30 10:19:22 +0100 |
commit | adaac459759db4a1fd35baddbe47bac700095496 (patch) | |
tree | 189657c7dffdc13de7f780eb35c1299fb8dbf3fa /include/linux/regmap.h | |
parent | 10524612e8aa98804190ec7d0b380cf99c3bdbd7 (diff) | |
download | linux-adaac459759db4a1fd35baddbe47bac700095496.tar.gz linux-adaac459759db4a1fd35baddbe47bac700095496.tar.bz2 linux-adaac459759db4a1fd35baddbe47bac700095496.zip |
regmap: Introduce max_raw_read/write for regmap_bulk_read/write
There are some buses which have a limit on the maximum number of bytes
that can be send/received. An example for this is
I2C_FUNC_SMBUS_I2C_BLOCK which does not support any reads/writes of more
than 32 bytes. The regmap_bulk operations should still be able to
utilize the full 32 bytes in this case.
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/linux/regmap.h')
-rw-r--r-- | include/linux/regmap.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 73fc34d0c4c2..327b8f291d3f 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h @@ -311,6 +311,8 @@ typedef void (*regmap_hw_free_context)(void *context); * @val_format_endian_default: Default endianness for formatted register * values. Used when the regmap_config specifies DEFAULT. If this is * DEFAULT, BIG is assumed. + * @max_raw_read: Max raw read size that can be used on the bus. + * @max_raw_write: Max raw write size that can be used on the bus. */ struct regmap_bus { bool fast_io; @@ -325,6 +327,8 @@ struct regmap_bus { u8 read_flag_mask; enum regmap_endian reg_format_endian_default; enum regmap_endian val_format_endian_default; + size_t max_raw_read; + size_t max_raw_write; }; struct regmap *regmap_init(struct device *dev, |