Messages in this thread | ![/](/images/icornerl.gif) | | From | Mark Brown <> | Subject | [GIT PULL] regmap updates for v6.5 | Date | Mon, 26 Jun 2023 14:32:56 +0100 |
| |
The following changes since commit 858fd168a95c5b9669aac8db6c14a9aeab446375:
Linux 6.4-rc6 (2023-06-11 14:35:30 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git tags/regmap-v6.5
for you to fetch changes up to d0c99ffe212679b338d12fe283964e6e43ce1501:
regmap: Allow reads from write only registers with the flat cache (2023-06-19 12:59:41 +0100)
---------------------------------------------------------------- regmap: Updates for v6.5
Another busy release for regmap with the second half fo the maple tree register cache implementation, there's some smaller optimisations that could be done but this should now be able to replace the rbtree cache for most devices.
We also had a followup from Aidan MacDonald's refactoring of some of the regmap-irq interfaces, the conversion is complete so the old interfaces are removed. This means that even with the new features for the maple tree cache we'd have a nice negative diffstat were it not for the addition of a bunch more KUnit coverage.
There's one GPIO patch in here, it was a dependency for a cleanup of an API in the regmap-irq code for which the gpio-104-dio-48e driver was the only user.
Highlights:
- The maple tree cache can now load in default values more efficiently, and is capabale of syncing multiple registers in a single write during cache sync. - More KUnit coverage, including some coverage for raw I/O and a dummy RAM backed cache to support it. - Removal of several old interfaces in regmap-irq now all the users have been modernised.
---------------------------------------------------------------- Aidan MacDonald (6): regmap-irq: Fix typo in documentation for .get_irq_reg() regmap-irq: Remove virtual registers regmap-irq: Remove type registers regmap-irq: Remove support for not_fixed_stride regmap-irq: Minor adjustments to .handle_mask_sync() regmap-irq: Drop backward compatibility for inverted mask/unmask
Charles Keepax (2): regmap: regmap-irq: Move handle_post_irq to before pm_runtime_put regmap: Add missing cache_only checks
Mark Brown (16): regmap-irq: Cleanups and remove unused regmap: Merge up v6.4-rc3 regmap: Load register defaults in blocks rather than register by register regmap: Provide a ram backed regmap with raw support regmap: Provide basic KUnit coverage for the raw register I/O regmap: Merge up v6.4-rc6 regmap: maple: Implement block sync for the maple tree cache regmap: Don't check for changes in regcache_set_val() regmap: Provide basic test coverage for raw I/O regmap: Add test that writes to write only registers are prevented regmap: Add a test case for write only registers regmap: Add test to make sure we don't sync to read only registers regmap: Check for register readability before checking cache during read regmap: Add KUnit tests for read/write checking regmap: Drop early readability check regmap: Allow reads from write only registers with the flat cache
Maxime Chevallier (1): regmap: mmio: Allow passing an empty config->reg_stride
Waqar Hameed (1): regmap: Add debugfs file for forcing field writes
William Breathitt Gray (2): gpio: 104-dio-48e: Implement struct dio48e_gpio regmap-irq: Drop map from handle_mask_sync() parameters
drivers/base/regmap/Makefile | 2 +- drivers/base/regmap/internal.h | 15 +- drivers/base/regmap/regcache-maple.c | 140 ++++++++++- drivers/base/regmap/regcache.c | 12 +- drivers/base/regmap/regmap-debugfs.c | 11 + drivers/base/regmap/regmap-irq.c | 273 ++++----------------- drivers/base/regmap/regmap-kunit.c | 451 +++++++++++++++++++++++++++++++++++ drivers/base/regmap/regmap-mmio.c | 2 +- drivers/base/regmap/regmap-raw-ram.c | 133 +++++++++++ drivers/base/regmap/regmap.c | 28 ++- drivers/gpio/gpio-104-dio-48e.c | 37 ++- include/linux/regmap.h | 33 +-- 12 files changed, 835 insertions(+), 302 deletions(-) create mode 100644 drivers/base/regmap/regmap-raw-ram.c
| ![\](/images/icornerr.gif) |