]> 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 22:36:56 +0000 (18:36 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Oct 2025 14:34:02 +0000 (16:34 +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 4c1a68c9f5750fdfe45eed9781a9ac736be56d47..6daf33e07ea0a811c195b61f43fc0a07263b4cd4 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[] = {