195 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/mfd/ti,tps6594.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: TI TPS6594 Power Management Integrated Circuit8 9maintainers:10 - Julien Panis <jpanis@baylibre.com>11 12description:13 TPS6594 is a Power Management IC which provides regulators and others14 features like GPIOs, RTC, watchdog, ESMs (Error Signal Monitor), and15 PFSM (Pre-configurable Finite State Machine) managing the state of the device.16 TPS6594 is the super-set device while TPS6593 and LP8764 are derivatives.17 18properties:19 compatible:20 enum:21 - ti,lp8764-q122 - ti,tps6593-q123 - ti,tps6594-q124 - ti,tps65224-q125 26 reg:27 description: I2C slave address or SPI chip select number.28 maxItems: 129 30 ti,primary-pmic:31 type: boolean32 description: |33 Identify the primary PMIC on SPMI bus.34 A multi-PMIC synchronization scheme is implemented in the PMIC device35 to synchronize the power state changes with other PMIC devices. This is36 accomplished through a SPMI bus: the primary PMIC is the controller37 device on the SPMI bus, and the secondary PMICs are the target devices38 on the SPMI bus.39 40 system-power-controller: true41 42 gpio-controller: true43 44 '#gpio-cells':45 const: 246 description: |47 The first cell is the pin number, the second cell is used to specify flags.48 See ../gpio/gpio.txt for more information.49 50 interrupts:51 maxItems: 152 53 regulators:54 type: object55 description: List of regulators provided by this controller.56 57 patternProperties:58 "^buck([1-5]|12|34|123|1234)$":59 type: object60 $ref: /schemas/regulator/regulator.yaml#61 62 unevaluatedProperties: false63 64 "^ldo[1-4]$":65 type: object66 $ref: /schemas/regulator/regulator.yaml#67 68 unevaluatedProperties: false69 70 allOf:71 - if:72 required:73 - buck1274 then:75 properties:76 buck123: false77 buck1234: false78 - if:79 required:80 - buck12381 then:82 properties:83 buck34: false84 - if:85 required:86 - buck123487 then:88 properties:89 buck34: false90 91 additionalProperties: false92 93patternProperties:94 "^buck([1-5]|12|34|123|1234)-supply$":95 description: Input supply phandle for each buck.96 97 "^ldo[1-4]-supply$":98 description: Input supply phandle for each ldo.99 100required:101 - compatible102 - reg103 - interrupts104 105additionalProperties: false106 107examples:108 - |109 #include <dt-bindings/interrupt-controller/arm-gic.h>110 i2c {111 #address-cells = <1>;112 #size-cells = <0>;113 114 tps6593: pmic@48 {115 compatible = "ti,tps6593-q1";116 reg = <0x48>;117 ti,primary-pmic;118 system-power-controller;119 120 gpio-controller;121 #gpio-cells = <2>;122 123 pinctrl-names = "default";124 pinctrl-0 = <&pmic_irq_pins_default>;125 interrupt-parent = <&mcu_gpio0>;126 interrupts = <0 IRQ_TYPE_EDGE_FALLING>;127 128 buck123-supply = <&vcc_3v3_sys>;129 buck4-supply = <&vcc_3v3_sys>;130 buck5-supply = <&vcc_3v3_sys>;131 ldo1-supply = <&vcc_3v3_sys>;132 ldo2-supply = <&vcc_3v3_sys>;133 ldo3-supply = <&buck5>;134 ldo4-supply = <&vcc_3v3_sys>;135 136 regulators {137 buck123: buck123 {138 regulator-name = "vcc_core";139 regulator-min-microvolt = <750000>;140 regulator-max-microvolt = <850000>;141 regulator-boot-on;142 regulator-always-on;143 };144 145 buck4: buck4 {146 regulator-name = "vcc_1v1";147 regulator-min-microvolt = <1100000>;148 regulator-max-microvolt = <1100000>;149 regulator-boot-on;150 regulator-always-on;151 };152 153 buck5: buck5 {154 regulator-name = "vcc_1v8_sys";155 regulator-min-microvolt = <1800000>;156 regulator-max-microvolt = <1800000>;157 regulator-boot-on;158 regulator-always-on;159 };160 161 ldo1: ldo1 {162 regulator-name = "vddshv5_sdio";163 regulator-min-microvolt = <3300000>;164 regulator-max-microvolt = <3300000>;165 regulator-boot-on;166 regulator-always-on;167 };168 169 ldo2: ldo2 {170 regulator-name = "vpp_1v8";171 regulator-min-microvolt = <1800000>;172 regulator-max-microvolt = <1800000>;173 regulator-boot-on;174 regulator-always-on;175 };176 177 ldo3: ldo3 {178 regulator-name = "vcc_0v85";179 regulator-min-microvolt = <850000>;180 regulator-max-microvolt = <850000>;181 regulator-boot-on;182 regulator-always-on;183 };184 185 ldo4: ldo4 {186 regulator-name = "vdda_1v8";187 regulator-min-microvolt = <1800000>;188 regulator-max-microvolt = <1800000>;189 regulator-boot-on;190 regulator-always-on;191 };192 };193 };194 };195