1f126890aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2f126890aSEmmanuel Vadot%YAML 1.2 3f126890aSEmmanuel Vadot--- 4f126890aSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/ti,tps6594.yaml# 5f126890aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6f126890aSEmmanuel Vadot 7f126890aSEmmanuel Vadottitle: TI TPS6594 Power Management Integrated Circuit 8f126890aSEmmanuel Vadot 9f126890aSEmmanuel Vadotmaintainers: 10f126890aSEmmanuel Vadot - Julien Panis <jpanis@baylibre.com> 11f126890aSEmmanuel Vadot 12f126890aSEmmanuel Vadotdescription: 13f126890aSEmmanuel Vadot TPS6594 is a Power Management IC which provides regulators and others 14f126890aSEmmanuel Vadot features like GPIOs, RTC, watchdog, ESMs (Error Signal Monitor), and 15f126890aSEmmanuel Vadot PFSM (Pre-configurable Finite State Machine) managing the state of the device. 16f126890aSEmmanuel Vadot TPS6594 is the super-set device while TPS6593 and LP8764 are derivatives. 17f126890aSEmmanuel Vadot 18f126890aSEmmanuel Vadotproperties: 19f126890aSEmmanuel Vadot compatible: 20f126890aSEmmanuel Vadot enum: 21f126890aSEmmanuel Vadot - ti,lp8764-q1 22f126890aSEmmanuel Vadot - ti,tps6593-q1 23f126890aSEmmanuel Vadot - ti,tps6594-q1 24*7d0873ebSEmmanuel Vadot - ti,tps65224-q1 25f126890aSEmmanuel Vadot 26f126890aSEmmanuel Vadot reg: 27f126890aSEmmanuel Vadot description: I2C slave address or SPI chip select number. 28f126890aSEmmanuel Vadot maxItems: 1 29f126890aSEmmanuel Vadot 30f126890aSEmmanuel Vadot ti,primary-pmic: 31f126890aSEmmanuel Vadot type: boolean 32f126890aSEmmanuel Vadot description: | 33f126890aSEmmanuel Vadot Identify the primary PMIC on SPMI bus. 34f126890aSEmmanuel Vadot A multi-PMIC synchronization scheme is implemented in the PMIC device 35f126890aSEmmanuel Vadot to synchronize the power state changes with other PMIC devices. This is 36f126890aSEmmanuel Vadot accomplished through a SPMI bus: the primary PMIC is the controller 37f126890aSEmmanuel Vadot device on the SPMI bus, and the secondary PMICs are the target devices 38f126890aSEmmanuel Vadot on the SPMI bus. 39f126890aSEmmanuel Vadot 40f126890aSEmmanuel Vadot system-power-controller: true 41f126890aSEmmanuel Vadot 42f126890aSEmmanuel Vadot gpio-controller: true 43f126890aSEmmanuel Vadot 44f126890aSEmmanuel Vadot '#gpio-cells': 45f126890aSEmmanuel Vadot const: 2 46f126890aSEmmanuel Vadot description: | 47f126890aSEmmanuel Vadot The first cell is the pin number, the second cell is used to specify flags. 48f126890aSEmmanuel Vadot See ../gpio/gpio.txt for more information. 49f126890aSEmmanuel Vadot 50f126890aSEmmanuel Vadot interrupts: 51f126890aSEmmanuel Vadot maxItems: 1 52f126890aSEmmanuel Vadot 53f126890aSEmmanuel Vadot regulators: 54f126890aSEmmanuel Vadot type: object 55f126890aSEmmanuel Vadot description: List of regulators provided by this controller. 56f126890aSEmmanuel Vadot 57f126890aSEmmanuel Vadot patternProperties: 58f126890aSEmmanuel Vadot "^buck([1-5]|12|34|123|1234)$": 59f126890aSEmmanuel Vadot type: object 60f126890aSEmmanuel Vadot $ref: /schemas/regulator/regulator.yaml# 61f126890aSEmmanuel Vadot 62f126890aSEmmanuel Vadot unevaluatedProperties: false 63f126890aSEmmanuel Vadot 64f126890aSEmmanuel Vadot "^ldo[1-4]$": 65f126890aSEmmanuel Vadot type: object 66f126890aSEmmanuel Vadot $ref: /schemas/regulator/regulator.yaml# 67f126890aSEmmanuel Vadot 68f126890aSEmmanuel Vadot unevaluatedProperties: false 69f126890aSEmmanuel Vadot 70f126890aSEmmanuel Vadot allOf: 71f126890aSEmmanuel Vadot - if: 72f126890aSEmmanuel Vadot required: 73f126890aSEmmanuel Vadot - buck12 74f126890aSEmmanuel Vadot then: 75f126890aSEmmanuel Vadot properties: 76f126890aSEmmanuel Vadot buck123: false 77f126890aSEmmanuel Vadot buck1234: false 78f126890aSEmmanuel Vadot - if: 79f126890aSEmmanuel Vadot required: 80f126890aSEmmanuel Vadot - buck123 81f126890aSEmmanuel Vadot then: 82f126890aSEmmanuel Vadot properties: 83f126890aSEmmanuel Vadot buck34: false 84f126890aSEmmanuel Vadot - if: 85f126890aSEmmanuel Vadot required: 86f126890aSEmmanuel Vadot - buck1234 87f126890aSEmmanuel Vadot then: 88f126890aSEmmanuel Vadot properties: 89f126890aSEmmanuel Vadot buck34: false 90f126890aSEmmanuel Vadot 91f126890aSEmmanuel Vadot additionalProperties: false 92f126890aSEmmanuel Vadot 93f126890aSEmmanuel VadotpatternProperties: 94f126890aSEmmanuel Vadot "^buck([1-5]|12|34|123|1234)-supply$": 95f126890aSEmmanuel Vadot description: Input supply phandle for each buck. 96f126890aSEmmanuel Vadot 97f126890aSEmmanuel Vadot "^ldo[1-4]-supply$": 98f126890aSEmmanuel Vadot description: Input supply phandle for each ldo. 99f126890aSEmmanuel Vadot 100f126890aSEmmanuel Vadotrequired: 101f126890aSEmmanuel Vadot - compatible 102f126890aSEmmanuel Vadot - reg 103f126890aSEmmanuel Vadot - interrupts 104f126890aSEmmanuel Vadot 105f126890aSEmmanuel VadotadditionalProperties: false 106f126890aSEmmanuel Vadot 107f126890aSEmmanuel Vadotexamples: 108f126890aSEmmanuel Vadot - | 109f126890aSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 110f126890aSEmmanuel Vadot i2c { 111f126890aSEmmanuel Vadot #address-cells = <1>; 112f126890aSEmmanuel Vadot #size-cells = <0>; 113f126890aSEmmanuel Vadot 114f126890aSEmmanuel Vadot tps6593: pmic@48 { 115f126890aSEmmanuel Vadot compatible = "ti,tps6593-q1"; 116f126890aSEmmanuel Vadot reg = <0x48>; 117f126890aSEmmanuel Vadot ti,primary-pmic; 118f126890aSEmmanuel Vadot system-power-controller; 119f126890aSEmmanuel Vadot 120f126890aSEmmanuel Vadot gpio-controller; 121f126890aSEmmanuel Vadot #gpio-cells = <2>; 122f126890aSEmmanuel Vadot 123f126890aSEmmanuel Vadot pinctrl-names = "default"; 124f126890aSEmmanuel Vadot pinctrl-0 = <&pmic_irq_pins_default>; 125f126890aSEmmanuel Vadot interrupt-parent = <&mcu_gpio0>; 126f126890aSEmmanuel Vadot interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 127f126890aSEmmanuel Vadot 128f126890aSEmmanuel Vadot buck123-supply = <&vcc_3v3_sys>; 129f126890aSEmmanuel Vadot buck4-supply = <&vcc_3v3_sys>; 130f126890aSEmmanuel Vadot buck5-supply = <&vcc_3v3_sys>; 131f126890aSEmmanuel Vadot ldo1-supply = <&vcc_3v3_sys>; 132f126890aSEmmanuel Vadot ldo2-supply = <&vcc_3v3_sys>; 133f126890aSEmmanuel Vadot ldo3-supply = <&buck5>; 134f126890aSEmmanuel Vadot ldo4-supply = <&vcc_3v3_sys>; 135f126890aSEmmanuel Vadot 136f126890aSEmmanuel Vadot regulators { 137f126890aSEmmanuel Vadot buck123: buck123 { 138f126890aSEmmanuel Vadot regulator-name = "vcc_core"; 139f126890aSEmmanuel Vadot regulator-min-microvolt = <750000>; 140f126890aSEmmanuel Vadot regulator-max-microvolt = <850000>; 141f126890aSEmmanuel Vadot regulator-boot-on; 142f126890aSEmmanuel Vadot regulator-always-on; 143f126890aSEmmanuel Vadot }; 144f126890aSEmmanuel Vadot 145f126890aSEmmanuel Vadot buck4: buck4 { 146f126890aSEmmanuel Vadot regulator-name = "vcc_1v1"; 147f126890aSEmmanuel Vadot regulator-min-microvolt = <1100000>; 148f126890aSEmmanuel Vadot regulator-max-microvolt = <1100000>; 149f126890aSEmmanuel Vadot regulator-boot-on; 150f126890aSEmmanuel Vadot regulator-always-on; 151f126890aSEmmanuel Vadot }; 152f126890aSEmmanuel Vadot 153f126890aSEmmanuel Vadot buck5: buck5 { 154f126890aSEmmanuel Vadot regulator-name = "vcc_1v8_sys"; 155f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 156f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 157f126890aSEmmanuel Vadot regulator-boot-on; 158f126890aSEmmanuel Vadot regulator-always-on; 159f126890aSEmmanuel Vadot }; 160f126890aSEmmanuel Vadot 161f126890aSEmmanuel Vadot ldo1: ldo1 { 162f126890aSEmmanuel Vadot regulator-name = "vddshv5_sdio"; 163f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 164f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 165f126890aSEmmanuel Vadot regulator-boot-on; 166f126890aSEmmanuel Vadot regulator-always-on; 167f126890aSEmmanuel Vadot }; 168f126890aSEmmanuel Vadot 169f126890aSEmmanuel Vadot ldo2: ldo2 { 170f126890aSEmmanuel Vadot regulator-name = "vpp_1v8"; 171f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 172f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 173f126890aSEmmanuel Vadot regulator-boot-on; 174f126890aSEmmanuel Vadot regulator-always-on; 175f126890aSEmmanuel Vadot }; 176f126890aSEmmanuel Vadot 177f126890aSEmmanuel Vadot ldo3: ldo3 { 178f126890aSEmmanuel Vadot regulator-name = "vcc_0v85"; 179f126890aSEmmanuel Vadot regulator-min-microvolt = <850000>; 180f126890aSEmmanuel Vadot regulator-max-microvolt = <850000>; 181f126890aSEmmanuel Vadot regulator-boot-on; 182f126890aSEmmanuel Vadot regulator-always-on; 183f126890aSEmmanuel Vadot }; 184f126890aSEmmanuel Vadot 185f126890aSEmmanuel Vadot ldo4: ldo4 { 186f126890aSEmmanuel Vadot regulator-name = "vdda_1v8"; 187f126890aSEmmanuel Vadot regulator-min-microvolt = <1800000>; 188f126890aSEmmanuel Vadot regulator-max-microvolt = <1800000>; 189f126890aSEmmanuel Vadot regulator-boot-on; 190f126890aSEmmanuel Vadot regulator-always-on; 191f126890aSEmmanuel Vadot }; 192f126890aSEmmanuel Vadot }; 193f126890aSEmmanuel Vadot }; 194f126890aSEmmanuel Vadot }; 195