]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mfd: intel_soc_pmic_chtdc_ti: Set use_single_read regmap_config flag
authorHans de Goede <hansg@kernel.org>
Mon, 13 Oct 2025 23:07:44 +0000 (19:07 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Oct 2025 14:23:21 +0000 (16:23 +0200)
[ Upstream commit 64e0d839c589f4f2ecd2e3e5bdb5cee6ba6bade9 ]

Testing has shown that reading multiple registers at once (for 10-bit
ADC values) does not work. Set the use_single_read regmap_config flag
to make regmap split these for us.

This should fix temperature opregion accesses done by
drivers/acpi/pmic/intel_pmic_chtdc_ti.c and is also necessary for
the upcoming drivers for the ADC and battery MFD cells.

Fixes: 6bac0606fdba ("mfd: Add support for Cherry Trail Dollar Cove TI PMIC")
Cc: stable@vger.kernel.org
Reviewed-by: Andy Shevchenko <andy@kernel.org>
Signed-off-by: Hans de Goede <hansg@kernel.org>
Link: https://lore.kernel.org/r/20250804133240.312383-1-hansg@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mfd/intel_soc_pmic_chtdc_ti.c

index 4027dc3d995ff59d4fe352108116bed3073f8f17..f0f0af677c9d6d375023fced29d9535b7bc68c85 100644 (file)
@@ -82,6 +82,8 @@ static const struct regmap_config chtdc_ti_regmap_config = {
        .reg_bits = 8,
        .val_bits = 8,
        .max_register = 0xff,
+       /* The hardware does not support reading multiple registers at once */
+       .use_single_read = true,
 };
 
 static const struct regmap_irq chtdc_ti_irqs[] = {