14d2aed6eSJerome Neanne# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 24d2aed6eSJerome Neanne%YAML 1.2 34d2aed6eSJerome Neanne--- 44d2aed6eSJerome Neanne$id: http://devicetree.org/schemas/regulator/ti,tps65219.yaml# 54d2aed6eSJerome Neanne$schema: http://devicetree.org/meta-schemas/core.yaml# 64d2aed6eSJerome Neanne 74d2aed6eSJerome Neannetitle: TI tps65219 Power Management Integrated Circuit regulators 84d2aed6eSJerome Neanne 94d2aed6eSJerome Neannemaintainers: 104d2aed6eSJerome Neanne - Jerome Neanne <jerome.neanne@baylibre.com> 114d2aed6eSJerome Neanne 124d2aed6eSJerome Neannedescription: | 134d2aed6eSJerome Neanne Regulator nodes should be named to buck<number> and ldo<number>. 144d2aed6eSJerome Neanne 154d2aed6eSJerome Neanneproperties: 164d2aed6eSJerome Neanne compatible: 174d2aed6eSJerome Neanne enum: 184d2aed6eSJerome Neanne - ti,tps65219 194d2aed6eSJerome Neanne 204d2aed6eSJerome Neanne reg: 214d2aed6eSJerome Neanne maxItems: 1 224d2aed6eSJerome Neanne 234d2aed6eSJerome Neanne system-power-controller: 244d2aed6eSJerome Neanne type: boolean 254d2aed6eSJerome Neanne description: Optional property that indicates that this device is 264d2aed6eSJerome Neanne controlling system power. 274d2aed6eSJerome Neanne 284d2aed6eSJerome Neanne interrupts: 294d2aed6eSJerome Neanne description: Short-circuit, over-current, under-voltage for regulators, PB interrupts. 304d2aed6eSJerome Neanne maxItems: 1 314d2aed6eSJerome Neanne 324d2aed6eSJerome Neanne interrupt-controller: true 334d2aed6eSJerome Neanne 344d2aed6eSJerome Neanne '#interrupt-cells': 354d2aed6eSJerome Neanne description: Specifies the PIN numbers and Flags, as defined in 364d2aed6eSJerome Neanne include/dt-bindings/interrupt-controller/irq.h 374d2aed6eSJerome Neanne const: 1 384d2aed6eSJerome Neanne 394d2aed6eSJerome Neanne ti,power-button: 404d2aed6eSJerome Neanne type: boolean 414d2aed6eSJerome Neanne description: | 424d2aed6eSJerome Neanne Optional property that sets the EN/PB/VSENSE pin to be a 434d2aed6eSJerome Neanne power-button. 444d2aed6eSJerome Neanne TPS65219 has a multipurpose pin called EN/PB/VSENSE that can be either 454d2aed6eSJerome Neanne 1. EN in which case it functions as an enable pin. 464d2aed6eSJerome Neanne 2. VSENSE which compares the voltages and triggers an automatic 474d2aed6eSJerome Neanne on/off request. 484d2aed6eSJerome Neanne 3. PB in which case it can be configured to trigger an interrupt 494d2aed6eSJerome Neanne to the SoC. 504d2aed6eSJerome Neanne ti,power-button reflects the last one of those options 514d2aed6eSJerome Neanne where the board has a button wired to the pin and triggers 524d2aed6eSJerome Neanne an interrupt on pressing it. 534d2aed6eSJerome Neanne 544d2aed6eSJerome Neanne regulators: 554d2aed6eSJerome Neanne type: object 564d2aed6eSJerome Neanne description: | 574d2aed6eSJerome Neanne list of regulators provided by this controller 584d2aed6eSJerome Neanne 594d2aed6eSJerome Neanne patternProperties: 604d2aed6eSJerome Neanne "^ldo[1-4]$": 614d2aed6eSJerome Neanne type: object 624d2aed6eSJerome Neanne $ref: regulator.yaml# 634d2aed6eSJerome Neanne description: 644d2aed6eSJerome Neanne Properties for single LDO regulator. 654d2aed6eSJerome Neanne 664d2aed6eSJerome Neanne unevaluatedProperties: false 674d2aed6eSJerome Neanne 684d2aed6eSJerome Neanne "^buck[1-3]$": 694d2aed6eSJerome Neanne type: object 704d2aed6eSJerome Neanne $ref: regulator.yaml# 714d2aed6eSJerome Neanne description: 724d2aed6eSJerome Neanne Properties for single BUCK regulator. 734d2aed6eSJerome Neanne 744d2aed6eSJerome Neanne unevaluatedProperties: false 754d2aed6eSJerome Neanne 764d2aed6eSJerome Neanne additionalProperties: false 774d2aed6eSJerome Neanne 78*43e6f457SRob HerringpatternProperties: 79*43e6f457SRob Herring "^buck[1-3]-supply$": 80*43e6f457SRob Herring description: Input supply phandle of one regulator. 81*43e6f457SRob Herring 82*43e6f457SRob Herring "^ldo[1-4]-supply$": 83*43e6f457SRob Herring description: Input supply phandle of one regulator. 84*43e6f457SRob Herring 854d2aed6eSJerome Neannerequired: 864d2aed6eSJerome Neanne - compatible 874d2aed6eSJerome Neanne - reg 884d2aed6eSJerome Neanne - interrupts 894d2aed6eSJerome Neanne - regulators 904d2aed6eSJerome Neanne 914d2aed6eSJerome NeanneadditionalProperties: false 924d2aed6eSJerome Neanne 934d2aed6eSJerome Neanneexamples: 944d2aed6eSJerome Neanne - | 954d2aed6eSJerome Neanne #include <dt-bindings/interrupt-controller/arm-gic.h> 964d2aed6eSJerome Neanne i2c { 974d2aed6eSJerome Neanne #address-cells = <1>; 984d2aed6eSJerome Neanne #size-cells = <0>; 994d2aed6eSJerome Neanne 1004d2aed6eSJerome Neanne tps65219: pmic@30 { 1014d2aed6eSJerome Neanne compatible = "ti,tps65219"; 1024d2aed6eSJerome Neanne reg = <0x30>; 1034d2aed6eSJerome Neanne buck1-supply = <&vcc_3v3_sys>; 1044d2aed6eSJerome Neanne buck2-supply = <&vcc_3v3_sys>; 1054d2aed6eSJerome Neanne buck3-supply = <&vcc_3v3_sys>; 1064d2aed6eSJerome Neanne ldo1-supply = <&vcc_3v3_sys>; 1074d2aed6eSJerome Neanne ldo2-supply = <&buck2_reg>; 1084d2aed6eSJerome Neanne ldo3-supply = <&vcc_3v3_sys>; 1094d2aed6eSJerome Neanne ldo4-supply = <&vcc_3v3_sys>; 1104d2aed6eSJerome Neanne 1114d2aed6eSJerome Neanne pinctrl-0 = <&pmic_irq_pins_default>; 1124d2aed6eSJerome Neanne 1134d2aed6eSJerome Neanne interrupt-parent = <&gic500>; 1144d2aed6eSJerome Neanne interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; 1154d2aed6eSJerome Neanne ti,power-button; 1164d2aed6eSJerome Neanne 1174d2aed6eSJerome Neanne regulators { 1184d2aed6eSJerome Neanne buck1_reg: buck1 { 1194d2aed6eSJerome Neanne regulator-name = "VDD_CORE"; 1204d2aed6eSJerome Neanne regulator-min-microvolt = <750000>; 1214d2aed6eSJerome Neanne regulator-max-microvolt = <750000>; 1224d2aed6eSJerome Neanne regulator-boot-on; 1234d2aed6eSJerome Neanne regulator-always-on; 1244d2aed6eSJerome Neanne }; 1254d2aed6eSJerome Neanne 1264d2aed6eSJerome Neanne buck2_reg: buck2 { 1274d2aed6eSJerome Neanne regulator-name = "VCC1V8"; 1284d2aed6eSJerome Neanne regulator-min-microvolt = <1800000>; 1294d2aed6eSJerome Neanne regulator-max-microvolt = <1800000>; 1304d2aed6eSJerome Neanne regulator-boot-on; 1314d2aed6eSJerome Neanne regulator-always-on; 1324d2aed6eSJerome Neanne }; 1334d2aed6eSJerome Neanne 1344d2aed6eSJerome Neanne buck3_reg: buck3 { 1354d2aed6eSJerome Neanne regulator-name = "VDD_LPDDR4"; 1364d2aed6eSJerome Neanne regulator-min-microvolt = <1100000>; 1374d2aed6eSJerome Neanne regulator-max-microvolt = <1100000>; 1384d2aed6eSJerome Neanne regulator-boot-on; 1394d2aed6eSJerome Neanne regulator-always-on; 1404d2aed6eSJerome Neanne }; 1414d2aed6eSJerome Neanne 1424d2aed6eSJerome Neanne ldo1_reg: ldo1 { 1434d2aed6eSJerome Neanne regulator-name = "VDDSHV_SD_IO_PMIC"; 1444d2aed6eSJerome Neanne regulator-min-microvolt = <33000000>; 1454d2aed6eSJerome Neanne regulator-max-microvolt = <33000000>; 1464d2aed6eSJerome Neanne }; 1474d2aed6eSJerome Neanne 1484d2aed6eSJerome Neanne ldo2_reg: ldo2 { 1494d2aed6eSJerome Neanne regulator-name = "VDDAR_CORE"; 1504d2aed6eSJerome Neanne regulator-min-microvolt = <850000>; 1514d2aed6eSJerome Neanne regulator-max-microvolt = <850000>; 1524d2aed6eSJerome Neanne regulator-boot-on; 1534d2aed6eSJerome Neanne regulator-always-on; 1544d2aed6eSJerome Neanne }; 1554d2aed6eSJerome Neanne 1564d2aed6eSJerome Neanne ldo3_reg: ldo3 { 1574d2aed6eSJerome Neanne regulator-name = "VDDA_1V8"; 1584d2aed6eSJerome Neanne regulator-min-microvolt = <18000000>; 1594d2aed6eSJerome Neanne regulator-max-microvolt = <18000000>; 1604d2aed6eSJerome Neanne regulator-boot-on; 1614d2aed6eSJerome Neanne regulator-always-on; 1624d2aed6eSJerome Neanne }; 1634d2aed6eSJerome Neanne 1644d2aed6eSJerome Neanne ldo4_reg: ldo4 { 1654d2aed6eSJerome Neanne regulator-name = "VDD_PHY_2V5"; 1664d2aed6eSJerome Neanne regulator-min-microvolt = <25000000>; 1674d2aed6eSJerome Neanne regulator-max-microvolt = <25000000>; 1684d2aed6eSJerome Neanne regulator-boot-on; 1694d2aed6eSJerome Neanne regulator-always-on; 1704d2aed6eSJerome Neanne }; 1714d2aed6eSJerome Neanne }; 1724d2aed6eSJerome Neanne }; 1734d2aed6eSJerome Neanne }; 174