summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2026-08-14 14:59:04 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2026-08-14 14:59:04 -0700
commitbeea256806c4ec5a6d04dca910ec78a4e270e083 (patch)
treeb78d180751148fcf0a7507596f7408f34b503432 /drivers
parentd2ed9eaaf2631a4f1c1f3b2fc267aecb2150a7b2 (diff)
parent00268f9452d2a0d660aa9c1bb0ca07a994af6a4f (diff)
downloadlinux-beea256806c4ec5a6d04dca910ec78a4e270e083.tar.gz
linux-beea256806c4ec5a6d04dca910ec78a4e270e083.zip
Merge tag 'regmap-fix-v7.2-rc7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap
Pull regmap fixes from Mark Brown: "A couple more fixes for regmap, this time for the SoundWire MBQ support: - Several drivers omit the readable_reg callback and it's generally optional in regmap but the MBQ code had an assumption that one was present added in one of the APIs, remove that - The timeout and retry intervals were swapped in read_poll_timeout() for soundwire-mbq" * tag 'regmap-fix-v7.2-rc7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: regmap: sdw-mbq: don't call an unset readable_reg callback regmap: sdw-mbq: Fix swap of timeout and retry times
Diffstat (limited to 'drivers')
-rw-r--r--drivers/base/regmap/regmap-sdw-mbq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/base/regmap/regmap-sdw-mbq.c b/drivers/base/regmap/regmap-sdw-mbq.c
index 2585933d4946..b0312f57c980 100644
--- a/drivers/base/regmap/regmap-sdw-mbq.c
+++ b/drivers/base/regmap/regmap-sdw-mbq.c
@@ -56,10 +56,10 @@ static int regmap_sdw_mbq_poll_busy(struct sdw_slave *slave, unsigned int reg,
reg = SDW_SDCA_CTL(SDW_SDCA_CTL_FUNC(reg), 0,
SDCA_CTL_ENTITY_0_FUNCTION_STATUS, 0);
- if (ctx->readable_reg(dev, reg)) {
+ if (!ctx->readable_reg || ctx->readable_reg(dev, reg)) {
ret = read_poll_timeout(sdw_read_no_pm, val,
val < 0 || !(val & SDCA_CTL_ENTITY_0_FUNCTION_BUSY),
- ctx->cfg.timeout_us, ctx->cfg.retry_us,
+ ctx->cfg.retry_us, ctx->cfg.timeout_us,
false, slave, reg);
if (val < 0)
return val;