[GIT PULL] regmap fixes for v6.5-rc2

From: Mark Brown
Date: Fri Jul 21 2023 - 15:33:36 EST


The following changes since commit fdf0eaf11452d72945af31804e2a1048ee1b574c:

Linux 6.5-rc2 (2023-07-16 15:10:37 -0700)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git tags/regmap-fix-v6.5-rc2

for you to fetch changes up to a9e26169cfda651802f88262a315146fbe4bc74c:

regmap: Disable locking for RBTREE and MAPLE unit tests (2023-07-20 13:57:01 +0100)

----------------------------------------------------------------
regmap: Fixes for v6.5

Three fixes here:

- The issues with accounting for register and padding length on raw
buses turn out to be quite widespread in custom buses, in order to
avoid disturbing anything drop the initial fixes and fall back to
a point fix in the SMBus code where the issue was originally noticed,
a more substantial refactoring of the API which ensures that all
buses make the same assumptions will follow.

- The generic regcache code had been forcing on async I/O which did
not work with the new maple tree sync code when used with SPI. Since
that was mainly for the rbtree cache and the assumptions about hardware
that drove the choice are probably not true any more fix this by pushing
the enablement of async down into the rbtree code, probably this also
makes cache syncs for systems faster though it's not the point.

- The test code was triggering use of the rbtree and maple tree caches
with dynamic allocation of nodes since all the testing is with RAM
backed caches with no I/O performance issues. Just disable the
locking in the tests to avoid triggering warnings when allocation
debugging is turned on, it's not really what's being tested.

----------------------------------------------------------------
Guenter Roeck (1):
regmap: Disable locking for RBTREE and MAPLE unit tests

Mark Brown (3):
regmap: Drop initial version of maximum transfer length fixes
regmap: Account for register length in SMBus I/O limits
regcache: Push async I/O request down into the rbtree cache

drivers/base/regmap/regcache-rbtree.c | 4 ++++
drivers/base/regmap/regcache.c | 3 ---
drivers/base/regmap/regmap-i2c.c | 8 ++++----
drivers/base/regmap/regmap-kunit.c | 5 +++++
drivers/base/regmap/regmap-spi-avmm.c | 2 +-
drivers/base/regmap/regmap.c | 6 ++----
6 files changed, 16 insertions(+), 12 deletions(-)