# 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 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; }; }; }; };