mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
Add supply properties that match the P1 PMIC's actual hardware topology
where each buck converter has its own VIN pin and LDO groups share
common input pins. Supply names are defined according to the pinout
names in the P1 datasheet.
The existing "vin-supply" is dropped from the binding document as the
updated spacemit P1 driver no longer parses it. Only the per-rail names
("vin1-supply", "vin2-supply", ...) are supported.
Signed-off-by: Guodong Xu <guodong@riscstar.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Alex Elder <elder@riscstar.com>
Link: https://patch.msgid.link/20260206-spacemit-p1-v4-1-8f695d93811e@riscstar.com
Signed-off-by: Mark Brown <broonie@kernel.org>
132 lines
3.4 KiB
YAML
132 lines
3.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/spacemit,p1.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: SpacemiT P1 Power Management Integrated Circuit
|
|
|
|
maintainers:
|
|
- Troy Mitchell <troy.mitchell@linux.spacemit.com>
|
|
|
|
description:
|
|
P1 is an I2C-controlled PMIC produced by SpacemiT. It implements six
|
|
constant-on-time buck converters and twelve low-dropout regulators.
|
|
It also contains a load switch, watchdog timer, real-time clock, eight
|
|
12-bit ADC channels, and six GPIOs. Additional details are available
|
|
in the "Power Stone/P1" section at the following link.
|
|
https://developer.spacemit.com/documentation
|
|
|
|
properties:
|
|
compatible:
|
|
const: spacemit,p1
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
vin1-supply:
|
|
description:
|
|
Power supply for BUCK1. Required if BUCK1 is defined.
|
|
|
|
vin2-supply:
|
|
description:
|
|
Power supply for BUCK2. Required if BUCK2 is defined.
|
|
|
|
vin3-supply:
|
|
description:
|
|
Power supply for BUCK3. Required if BUCK3 is defined.
|
|
|
|
vin4-supply:
|
|
description:
|
|
Power supply for BUCK4. Required if BUCK4 is defined.
|
|
|
|
vin5-supply:
|
|
description:
|
|
Power supply for BUCK5. Required if BUCK5 is defined.
|
|
|
|
vin6-supply:
|
|
description:
|
|
Power supply for BUCK6. Required if BUCK6 is defined.
|
|
|
|
aldoin-supply:
|
|
description:
|
|
Power supply for ALDO1-4. Required if any are defined.
|
|
|
|
dldoin1-supply:
|
|
description:
|
|
Power supply for DLDO1-4. Required if any are defined.
|
|
|
|
dldoin2-supply:
|
|
description:
|
|
Power supply for DLDO5-7. Required if any are defined.
|
|
|
|
regulators:
|
|
type: object
|
|
|
|
patternProperties:
|
|
"^(buck[1-6]|aldo[1-4]|dldo[1-7])$":
|
|
type: object
|
|
$ref: /schemas/regulator/regulator.yaml#
|
|
unevaluatedProperties: false
|
|
|
|
unevaluatedProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
i2c {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pmic@41 {
|
|
compatible = "spacemit,p1";
|
|
reg = <0x41>;
|
|
interrupts = <64>;
|
|
vin1-supply = <®_vcc_5v>;
|
|
vin5-supply = <®_vcc_5v>;
|
|
aldoin-supply = <®_vcc_5v>;
|
|
dldoin1-supply = <&buck5>;
|
|
|
|
regulators {
|
|
buck1 {
|
|
regulator-name = "buck1";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <3450000>;
|
|
regulator-ramp-delay = <5000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
buck5: buck5 {
|
|
regulator-name = "buck5";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <3450000>;
|
|
regulator-ramp-delay = <5000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
aldo1 {
|
|
regulator-name = "aldo1";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <3400000>;
|
|
regulator-boot-on;
|
|
};
|
|
|
|
dldo1 {
|
|
regulator-name = "dldo1";
|
|
regulator-min-microvolt = <500000>;
|
|
regulator-max-microvolt = <3400000>;
|
|
regulator-boot-on;
|
|
};
|
|
};
|
|
};
|
|
};
|