On Thu, Oct 01, 2015 at 12:38:07PM -0400, j...@ringle.org wrote: > From: Jon Ringle <jrin...@gridpoint.com> > > This commit allows installing a custom reg_update_bits function for cases > where > the hardware provides a mechanism to set or clear register bits without a > read/modify/write cycle. Such is the case with the Microchip ENCX24J600.
Thanks, I've applied this. I'll extend it so that individual devices can do this as well - I've not looked at your driver but it might be that this is a better option than regmap_bus for your driver (but both are supported so meh). Dave, I've tagged the commit and there's a pull request for this below: The following changes since commit 6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f: Linux 4.3-rc1 (2015-09-12 16:35:56 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git tags/regmap-offload-update-bits for you to fetch changes up to 77792b11409c9270d98e604b4314b85ce886ac7d: regmap: Allow installing custom reg_update_bits function (2015-10-06 16:12:34 +0100) ---------------------------------------------------------------- regmap: Allow buses to provide a custom update_bits() operation Some buses provide a native _update_bits() operation which for uncached registers is faster than doing a read/modify/write cycle as it is a single bus transaction. Add support for implementing this to regmap. ---------------------------------------------------------------- Jon Ringle (1): regmap: Allow installing custom reg_update_bits function drivers/base/regmap/internal.h | 2 ++ drivers/base/regmap/regmap.c | 29 ++++++++++++++++++----------- include/linux/regmap.h | 3 +++ 3 files changed, 23 insertions(+), 11 deletions(-)
signature.asc
Description: Digital signature