[v7,3/5] dt-bindings: mfd: x-powers,axp152: Document AXP318W
Commit Message
From: Andre Przywara <andre.przywara@arm.com>
The X-Powers AXP318W is a PMIC used on some newer Allwinner devices.
Among a large number of both DCDC and LDO regulators it features the usual
ADC/IRQ/power key parts.
Like other recent PMICs, it lacks the DC/DC converter PWM frequency control
register, that rate is fixed here (1.5MHz on DCDC1, 3 MHz on the others).
Add the new compatible string, and add that to the list of PMICs without
the PWM frequency property.
Also add more input supply properties, for the split DCDC and ALDO
supplies.
The PMIC features *two* switched outputs, hanging of DCDC1, and the
manual calls them swout1 and swout2, so follow suit here and add those
names to the pattern for matching the node names.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Chen-Yu Tsai <wens@kernel.org>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
.../devicetree/bindings/mfd/x-powers,axp152.yaml | 28 +++++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)
Comments
On jeu. 10 sept. 2026 at 09:42, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [Medium] The new `x-powers,axp318w` compatible string is omitted from the conditional block that makes the `interrupts` property optional for recent generation PMICs.
> --
>
> commit e4119d6ce87c67baf660bd6f040790fb69b77af3
> Author: Andre Przywara <andre.przywara@arm.com>
>
> dt-bindings: mfd: x-powers,axp152: Document AXP318W
>
> This commit adds the compatible string x-powers,axp318w for the AXP318W PMIC
> to the binding schema. It also adds new input supply properties and updates
> the regex for matching switched output nodes.
>
>> diff --git a/Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml b/Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml
>> index 45f015d63df16..38556c32417b3 100644
>> --- a/Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml
>> +++ b/Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml
>> @@ -83,6 +83,7 @@ allOf:
>> contains:
>> enum:
>> - x-powers,axp313a
>> + - x-powers,axp318w
>> - x-powers,axp323
>> - x-powers,axp15060
>> - x-powers,axp717
>
> [Severity: Medium]
> Does the x-powers,axp318w compatible string also need to be added to the
> earlier if-then block that governs the interrupts requirement?
Ahhh, got it the other way around first time this poped - resending ...
>
> Just above this hunk in Documentation/devicetree/bindings/mfd/x-powers,axp152.yaml,
> there is a block that makes interrupts mandatory for all PMICs except a select
> few:
>
> - if:
> not:
> properties:
> compatible:
> contains:
> enum:
> - x-powers,axp15060
> - x-powers,axp305
> - x-powers,axp313a
> - x-powers,axp323
>
> then:
> required:
> - interrupts
>
> By omitting x-powers,axp318w from this enum, the interrupts property is
> mandatory for the new PMIC. Could this cause device trees with an unconnected
> AXP318W interrupt line to falsely fail dt_binding_check validation, given that
> similar recent generation PMICs operate fine without it?
>
> --
> Sashiko AI review ยท https://sashiko.dev/#/patchset/20260910-axp318-regulator-v7-0-de720ceb9bac@baylibre.com?part=3
@@ -83,6 +83,7 @@ allOf:
contains:
enum:
- x-powers,axp313a
+ - x-powers,axp318w
- x-powers,axp323
- x-powers,axp15060
- x-powers,axp717
@@ -102,6 +103,7 @@ properties:
- x-powers,axp221
- x-powers,axp223
- x-powers,axp313a
+ - x-powers,axp318w
- x-powers,axp323
- x-powers,axp717
- x-powers,axp803
@@ -156,10 +158,18 @@ properties:
description: >
DCDC1 power supply node, if present.
+ vin19-supply:
+ description: >
+ Combined DCDC1/DCDC9 power supply node, if present.
+
vin2-supply:
description: >
DCDC2 power supply node, if present.
+ vin23-supply:
+ description: >
+ Combined DCDC2/DCDC3 power supply node, if present.
+
vin3-supply:
description: >
DCDC3 power supply node, if present.
@@ -168,6 +178,10 @@ properties:
description: >
DCDC4 power supply node, if present.
+ vin45-supply:
+ description: >
+ Combined DCDC4/DCDC5 power supply node, if present.
+
vin5-supply:
description: >
DCDC5 power supply node, if present.
@@ -176,6 +190,10 @@ properties:
description: >
DCDC6 power supply node, if present.
+ vin678-supply:
+ description: >
+ Combined DCDC6/DCDC7/DCDC8 power supply node, if present.
+
vin7-supply:
description: >
DCDC7 power supply node, if present.
@@ -220,6 +238,14 @@ properties:
description: >
ALDO* power supply node, if present.
+ aldo156in-supply:
+ description: >
+ ALDO* power supply node, if present.
+
+ aldo234in-supply:
+ description: >
+ ALDO* power supply node, if present.
+
bldoin-supply:
description: >
BLDO* power supply node, if present.
@@ -277,7 +303,7 @@ properties:
Defines the work frequency of DC-DC in kHz.
patternProperties:
- "^(([a-f])?ldo[0-9]|dcdc[0-7a-e]|ldo(_|-)io(0|1)|(dc1)?sw|rtc(_|-)ldo|cpusldo|drivevbus|dc5ldo|boost)$":
+ "^(([a-f])?ldo[0-9]|dcdc[0-9a-e]|ldo(_|-)io(0|1)|(dc1)?sw|swout[1-2]|rtc(_|-)ldo|cpusldo|drivevbus|dc5ldo|boost)$":
$ref: /schemas/regulator/regulator.yaml#
type: object
unevaluatedProperties: false