.../devicetree/bindings/mfd/x-powers,axp152.yaml | 29 +- drivers/mfd/axp20x-i2c.c | 26 +- drivers/mfd/axp20x-rsb.c | 1 + drivers/mfd/axp20x.c | 93 +++++- drivers/regulator/axp20x-regulator.c | 319 ++++++++++++++++++++- include/linux/mfd/axp20x.h | 148 +++++++++- 6 files changed, 590 insertions(+), 26 deletions(-)
This patch series adds support for the X-Powers AXP318W PMIC, which is
used recently on new boards with Allwinner SoCs (the A733).
The PMIC features 9 DCDC buck converters and 28 LDOs, plus the usual ADC,
interrupts, and power key components.
A datasheet can be found linked in this Wiki table:
https://linux-sunxi.org/AXP_PMICs
There was an unclosed topic regarding the handling of LDOs output
voltage being limited to input voltage being provided by the supply.
Chen-Yu noted the min_dropout_uV would be a good fit for that but
the actual minimal dropout value was unknown. I've arbitrarily picked
1uV because it is the minimum the framework supports. Realistically a low
dropout regulator is bound to have some dropout. This choice does the
trick for now and is certain be less restrictive than what it is in
reality.
If anyone has problems because the dropout is actually higher
* it is arguably an HW design error
* it is a good time to let us know what the actual dropout is
Changes in v8:
- Fix interrupt optional in the binding (mis-understanding on my end)
Resent quickly to avoid wasting time on v7 over this
- Link to v7: https://patch.msgid.link/20260910-axp318-regulator-v7-0-de720ceb9bac@baylibre.com
Changes in v7:
- Rebased on v7.3-rc1.
- Applied Chen-Yu change requests.
- More complete register definition all in the MFD change.
- Add writeable region holes.
- Fix invertion between short and long press IRQ.
- Drop confusing comment about DVM.
- Use MFD_CELL_NAME() for the regulator device.
- Link to v6: https://patch.msgid.link/20260812-axp318-regulator-v6-0-d6b84b55c000@baylibre.com
Changes in v6:
- Apply wording suggestions from Chen-Yu
- Link to v5: https://patch.msgid.link/20260720-axp318-regulator-v5-0-a1afa7ee24f9@baylibre.com
Changes in v5:
- Fix shutdown register offset
- Re-order patches to put fixes first
- Tighten DT regexp around swout
- Other points raised by Sashiko on v4 are unrelated to the addition
of the AXP318 support and pre-exist the series. They are not
addressed ATM.
- Link to v4: https://patch.msgid.link/20260717-axp318-regulator-v4-0-50aff97084dd@baylibre.com
Changes in v4:
- Capitalize patch 3 title
- regulator: add support for workmode and poly-phase.
- i2c: fix probe through i2c sysfs
- Link to v3: https://patch.msgid.link/20260717-axp318-regulator-v3-0-779dc1b97dd4@baylibre.com
Changes in v3:
- Correct mess up v2 errors regarding ops and ids.
- Correctly propagate errors when checking axp318 threshold.
- Fix DT binding regex regarding dcdc max ids
- Add missing RTCLDO.
- Remove axp318 PEK MFD cell:
As pointed out by sashiko, the driver name did not match anything in the
pek driver. While the device does support some handling of the power
button, it does not seem to match the existing driver. Register 0x36
relates to DLDO3, not the power key, as expected by the misc driver.
Leave this out for now.
- Constify axp313 and axp717 mfd_cells array for consistency.
- Link to v2: https://patch.msgid.link/20260710-axp318-regulator-v2-0-ee5f1c56b49f@baylibre.com
Changes in v2:
- Dropped _NUM_VOLTAGES macros
- Use min_dropout_uV to limit LDO voltage to supplies
- Add bypass mode for EDLO4/5
- Prevent crossing 1.54V threshold for DCDC6/7/8/9
- Link to v1: https://lore.kernel.org/r/20251021112013.2710903-1-andre.przywara@arm.com
---
Andre Przywara (3):
dt-bindings: mfd: x-powers,axp152: Document AXP318W
mfd: axp20x: Add support for AXP318W PMIC
regulator: axp20x: add support for the AXP318W
Jerome Brunet (2):
mfd: axp20x: Constify axp313 and axp717 cells
mfd: axp20x-i2c: Fix i2c instantiation
.../devicetree/bindings/mfd/x-powers,axp152.yaml | 29 +-
drivers/mfd/axp20x-i2c.c | 26 +-
drivers/mfd/axp20x-rsb.c | 1 +
drivers/mfd/axp20x.c | 93 +++++-
drivers/regulator/axp20x-regulator.c | 319 ++++++++++++++++++++-
include/linux/mfd/axp20x.h | 148 +++++++++-
6 files changed, 590 insertions(+), 26 deletions(-)
---
base-commit: cee9395acd8043be0644b25c34bfa86623f2b935
change-id: 20260710-axp318-regulator-43545ce3261f
Best regards,
--
Jerome
Hi Lee, On Thu, Sep 10, 2026 at 6:44 PM Jerome Brunet <jbrunet@baylibre.com> wrote: > > This patch series adds support for the X-Powers AXP318W PMIC, which is > used recently on new boards with Allwinner SoCs (the A733). > > The PMIC features 9 DCDC buck converters and 28 LDOs, plus the usual ADC, > interrupts, and power key components. > A datasheet can be found linked in this Wiki table: > https://linux-sunxi.org/AXP_PMICs > > There was an unclosed topic regarding the handling of LDOs output > voltage being limited to input voltage being provided by the supply. > Chen-Yu noted the min_dropout_uV would be a good fit for that but > the actual minimal dropout value was unknown. I've arbitrarily picked > 1uV because it is the minimum the framework supports. Realistically a low > dropout regulator is bound to have some dropout. This choice does the > trick for now and is certain be less restrictive than what it is in > reality. > > If anyone has problems because the dropout is actually higher > * it is arguably an HW design error > * it is a good time to let us know what the actual dropout is > > Changes in v8: > - Fix interrupt optional in the binding (mis-understanding on my end) > Resent quickly to avoid wasting time on v7 over this > - Link to v7: https://patch.msgid.link/20260910-axp318-regulator-v7-0-de720ceb9bac@baylibre.com > > Changes in v7: > - Rebased on v7.3-rc1. > - Applied Chen-Yu change requests. > - More complete register definition all in the MFD change. > - Add writeable region holes. > - Fix invertion between short and long press IRQ. > - Drop confusing comment about DVM. > - Use MFD_CELL_NAME() for the regulator device. > - Link to v6: https://patch.msgid.link/20260812-axp318-regulator-v6-0-d6b84b55c000@baylibre.com > > Changes in v6: > - Apply wording suggestions from Chen-Yu > - Link to v5: https://patch.msgid.link/20260720-axp318-regulator-v5-0-a1afa7ee24f9@baylibre.com > > Changes in v5: > - Fix shutdown register offset > - Re-order patches to put fixes first > - Tighten DT regexp around swout > - Other points raised by Sashiko on v4 are unrelated to the addition > of the AXP318 support and pre-exist the series. They are not > addressed ATM. > - Link to v4: https://patch.msgid.link/20260717-axp318-regulator-v4-0-50aff97084dd@baylibre.com > > Changes in v4: > - Capitalize patch 3 title > - regulator: add support for workmode and poly-phase. > - i2c: fix probe through i2c sysfs > - Link to v3: https://patch.msgid.link/20260717-axp318-regulator-v3-0-779dc1b97dd4@baylibre.com > > Changes in v3: > - Correct mess up v2 errors regarding ops and ids. > - Correctly propagate errors when checking axp318 threshold. > - Fix DT binding regex regarding dcdc max ids > - Add missing RTCLDO. > - Remove axp318 PEK MFD cell: > As pointed out by sashiko, the driver name did not match anything in the > pek driver. While the device does support some handling of the power > button, it does not seem to match the existing driver. Register 0x36 > relates to DLDO3, not the power key, as expected by the misc driver. > Leave this out for now. > - Constify axp313 and axp717 mfd_cells array for consistency. > - Link to v2: https://patch.msgid.link/20260710-axp318-regulator-v2-0-ee5f1c56b49f@baylibre.com > > Changes in v2: > - Dropped _NUM_VOLTAGES macros > - Use min_dropout_uV to limit LDO voltage to supplies > - Add bypass mode for EDLO4/5 > - Prevent crossing 1.54V threshold for DCDC6/7/8/9 > - Link to v1: https://lore.kernel.org/r/20251021112013.2710903-1-andre.przywara@arm.com > > --- > Andre Przywara (3): > dt-bindings: mfd: x-powers,axp152: Document AXP318W > mfd: axp20x: Add support for AXP318W PMIC > regulator: axp20x: add support for the AXP318W > > Jerome Brunet (2): > mfd: axp20x: Constify axp313 and axp717 cells > mfd: axp20x-i2c: Fix i2c instantiation I think this series is ready to be merged. Mark gave his reviewed-by for the regulator patch, which IIRC he said acks the patch to go through another tree. So please merge the whole series through the mfd tree. Thanks ChenYu
© 2016 - 2026 Red Hat, Inc.