diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-03 11:31:04 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-03 11:31:04 -0700 |
commit | de6b25de4584febbe1808bc782734ae163b22c26 (patch) | |
tree | a9aa0d0009494eed9a496a1093dfdc49617385d0 /include | |
parent | bd698cf6595b079ce36423e8c7eb4a69a31b1733 (diff) | |
parent | ef98ae45e6b3ea17d3ed27cec9afdd7e46f916ae (diff) |
Merge tag 'regmap-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into next
Pull regmap updates from Mark Brown:
"Another fairly quiet release, a few bug fixes and a couple of new
features:
- support for I2C devices connected to SMBus rather than full I2C
controllers contributed by Boris Brezillon. If the controller is
only capable of SMBus operation the framework will transparently
fall back to that
- suport for little endian values, contributed by Xiubo Li"
* tag 'regmap-v3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
regmap: mmio: Fix regmap_mmio_write for uneven counts
regmap: irq: Fix possible ZERO_SIZE_PTR pointer dereferencing error.
regmap: Add missing initialization of this_page
regmap: Fix possible ZERO_SIZE_PTR pointer dereferencing error.
regmap: i2c: fallback to SMBus if the adapter does not support standard I2C
regmap: add reg_read/reg_write callbacks to regmap_bus struct
regmap: rbtree: improve 64bits memory alignment
regmap: mmio: Fix the bug of 'offset' value parsing.
regmap: implement LE formatting/parsing for 16/32-bit values.
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/regmap.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 85691b9b4fa7..7b0e4b425cdf 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h @@ -276,6 +276,10 @@ typedef int (*regmap_hw_async_write)(void *context, typedef int (*regmap_hw_read)(void *context, const void *reg_buf, size_t reg_size, void *val_buf, size_t val_size); +typedef int (*regmap_hw_reg_read)(void *context, unsigned int reg, + unsigned int *val); +typedef int (*regmap_hw_reg_write)(void *context, unsigned int reg, + unsigned int val); typedef struct regmap_async *(*regmap_hw_async_alloc)(void); typedef void (*regmap_hw_free_context)(void *context); @@ -309,7 +313,9 @@ struct regmap_bus { regmap_hw_write write; regmap_hw_gather_write gather_write; regmap_hw_async_write async_write; + regmap_hw_reg_write reg_write; regmap_hw_read read; + regmap_hw_reg_read reg_read; regmap_hw_free_context free_context; regmap_hw_async_alloc async_alloc; u8 read_flag_mask; |