From: Jerome Brunet <jbrunet@baylibre.com>
To: Andre Przywara <andre.przywara@arm.com>,
Lee Jones <lee@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Chen-Yu Tsai <wens@kernel.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Hans de Goede <hansg@kernel.org>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
mfd@lists.linux.dev, linux-sunxi@lists.linux.dev,
Jerome Brunet <jbrunet@baylibre.com>,
Sashiko <sashiko-bot@kernel.org>,
Conor Dooley <conor.dooley@microchip.com>
Subject: [PATCH v8 0/5] regulator: Add X-Powers AXP318W PMIC support
Date: Thu, 10 Sep 2026 12:44:34 +0200 [thread overview]
Message-ID: <20260910-axp318-regulator-v8-0-e906a61a7f3d@baylibre.com> (raw)
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
next reply other threads:[~2026-09-10 10:44 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-10 10:44 Jerome Brunet [this message]
2026-09-10 10:44 ` [PATCH v8 1/5] mfd: axp20x: Constify axp313 and axp717 cells Jerome Brunet
2026-09-10 10:49 ` sashiko-bot
2026-09-10 10:44 ` [PATCH v8 2/5] mfd: axp20x-i2c: Fix i2c instantiation Jerome Brunet
2026-09-10 10:52 ` sashiko-bot
2026-09-10 10:44 ` [PATCH v8 3/5] dt-bindings: mfd: x-powers,axp152: Document AXP318W Jerome Brunet
2026-09-10 10:53 ` sashiko-bot
2026-09-10 10:44 ` [PATCH v8 4/5] mfd: axp20x: Add support for AXP318W PMIC Jerome Brunet
2026-09-10 10:52 ` sashiko-bot
2026-09-10 10:44 ` [PATCH v8 5/5] regulator: axp20x: add support for the AXP318W Jerome Brunet
2026-09-10 10:51 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260910-axp318-regulator-v8-0-e906a61a7f3d@baylibre.com \
--to=jbrunet@baylibre.com \
--cc=andre.przywara@arm.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=conor.dooley@microchip.com \
--cc=devicetree@vger.kernel.org \
--cc=hansg@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lee@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=mfd@lists.linux.dev \
--cc=robh@kernel.org \
--cc=sashiko-bot@kernel.org \
--cc=wens@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox