Re: [PATCH v2] Revert "mfd: axp20x: Allow multiple regulators"
From: Chen-Yu Tsai
Date: Wed Jan 08 2025 - 11:53:13 EST
On Thu, Jan 9, 2025 at 12:44 AM Andre Przywara <andre.przywara@xxxxxxx> wrote:
>
> As Chris and Vasily reported, the attempt to support multiple AXP PMICs
> in one system [1] breaks some of the battery and charging functionality
> on devices with AXP PMICs. The reason is that the drivers now fail to get
> the correct IIO channel for the ADC component, as the current code seems
> to rely on the zero-based enumeration of the regulator devices.
> A fix is possible, but not trivial, as it requires some rework in the AXP
> MFD driver, which cannot be fully reviewed or tested in time for the
> 6.13 release.
>
> So revert this patch for now, to avoid regressions on battery powered
> devices. This patch was really only necessary for devices with two
> PMICs, support for which is not mainline yet anyway, so we don't lose
> any functionality.
>
> This reverts commit e37ec32188701efa01455b9be42a392adab06ce4.
>
> [1] https://lore.kernel.org/linux-sunxi/20241007001408.27249-4-andre.przywara@xxxxxxx/
>
> Reported-by: Chris Morgan <macroalpha82@xxxxxxxxx>
> Closes: https://lore.kernel.org/linux-sunxi/675489c1.050a0220.8d73f.6e90@xxxxxxxxxxxxx/
> Reported-by: Vasily Khoruzhick <anarsoul@xxxxxxxxx>
> Closes: https://lore.kernel.org/linux-sunxi/CA+E=qVf8_9gn0y=mcdKXvj2PFoHT2eF+JN=CmtTNdRGaSnpgKg@xxxxxxxxxxxxxx/
> Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>
Acked-by: Chen-Yu Tsai <wens@xxxxxxxx>
> ---
> Hi,
>
> just replacing the old -1 with the respective macro name, as Lee asked
> for. Also adding tags to acknowledge the reporters.
> Lee, feel free to change the subject line if you think the "Revert" in
> there is not justified anymore.
>
> Cheers,
> Andre
>
> Changes v1 .. v2:
> - use proper name for the formely used -1 value
> - add Reported-by: tags
>
> drivers/mfd/axp20x.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/axp20x.c b/drivers/mfd/axp20x.c
> index 251465a656d09..bce85a58944ac 100644
> --- a/drivers/mfd/axp20x.c
> +++ b/drivers/mfd/axp20x.c
> @@ -1445,7 +1445,7 @@ int axp20x_device_probe(struct axp20x_dev *axp20x)
> }
> }
>
> - ret = mfd_add_devices(axp20x->dev, PLATFORM_DEVID_AUTO, axp20x->cells,
> + ret = mfd_add_devices(axp20x->dev, PLATFORM_DEVID_NONE, axp20x->cells,
> axp20x->nr_cells, NULL, 0, NULL);
>
> if (ret) {
> --
> 2.25.1
>