194 lines
5.4 KiB
YAML
194 lines
5.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/ti,tps6594.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: TI TPS6594 Power Management Integrated Circuit
|
|
|
|
maintainers:
|
|
- Julien Panis <jpanis@baylibre.com>
|
|
|
|
description:
|
|
TPS6594 is a Power Management IC which provides regulators and others
|
|
features like GPIOs, RTC, watchdog, ESMs (Error Signal Monitor), and
|
|
PFSM (Pre-configurable Finite State Machine) managing the state of the device.
|
|
TPS6594 is the super-set device while TPS6593 and LP8764 are derivatives.
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- ti,lp8764-q1
|
|
- ti,tps6593-q1
|
|
- ti,tps6594-q1
|
|
|
|
reg:
|
|
description: I2C slave address or SPI chip select number.
|
|
maxItems: 1
|
|
|
|
ti,primary-pmic:
|
|
type: boolean
|
|
description: |
|
|
Identify the primary PMIC on SPMI bus.
|
|
A multi-PMIC synchronization scheme is implemented in the PMIC device
|
|
to synchronize the power state changes with other PMIC devices. This is
|
|
accomplished through a SPMI bus: the primary PMIC is the controller
|
|
device on the SPMI bus, and the secondary PMICs are the target devices
|
|
on the SPMI bus.
|
|
|
|
system-power-controller: true
|
|
|
|
gpio-controller: true
|
|
|
|
'#gpio-cells':
|
|
const: 2
|
|
description: |
|
|
The first cell is the pin number, the second cell is used to specify flags.
|
|
See ../gpio/gpio.txt for more information.
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
regulators:
|
|
type: object
|
|
description: List of regulators provided by this controller.
|
|
|
|
patternProperties:
|
|
"^buck([1-5]|12|34|123|1234)$":
|
|
type: object
|
|
$ref: /schemas/regulator/regulator.yaml#
|
|
|
|
unevaluatedProperties: false
|
|
|
|
"^ldo[1-4]$":
|
|
type: object
|
|
$ref: /schemas/regulator/regulator.yaml#
|
|
|
|
unevaluatedProperties: false
|
|
|
|
allOf:
|
|
- if:
|
|
required:
|
|
- buck12
|
|
then:
|
|
properties:
|
|
buck123: false
|
|
buck1234: false
|
|
- if:
|
|
required:
|
|
- buck123
|
|
then:
|
|
properties:
|
|
buck34: false
|
|
- if:
|
|
required:
|
|
- buck1234
|
|
then:
|
|
properties:
|
|
buck34: false
|
|
|
|
additionalProperties: false
|
|
|
|
patternProperties:
|
|
"^buck([1-5]|12|34|123|1234)-supply$":
|
|
description: Input supply phandle for each buck.
|
|
|
|
"^ldo[1-4]-supply$":
|
|
description: Input supply phandle for each ldo.
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
i2c {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
tps6593: pmic@48 {
|
|
compatible = "ti,tps6593-q1";
|
|
reg = <0x48>;
|
|
ti,primary-pmic;
|
|
system-power-controller;
|
|
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pmic_irq_pins_default>;
|
|
interrupt-parent = <&mcu_gpio0>;
|
|
interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
|
|
|
|
buck123-supply = <&vcc_3v3_sys>;
|
|
buck4-supply = <&vcc_3v3_sys>;
|
|
buck5-supply = <&vcc_3v3_sys>;
|
|
ldo1-supply = <&vcc_3v3_sys>;
|
|
ldo2-supply = <&vcc_3v3_sys>;
|
|
ldo3-supply = <&buck5>;
|
|
ldo4-supply = <&vcc_3v3_sys>;
|
|
|
|
regulators {
|
|
buck123: buck123 {
|
|
regulator-name = "vcc_core";
|
|
regulator-min-microvolt = <750000>;
|
|
regulator-max-microvolt = <850000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
buck4: buck4 {
|
|
regulator-name = "vcc_1v1";
|
|
regulator-min-microvolt = <1100000>;
|
|
regulator-max-microvolt = <1100000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
buck5: buck5 {
|
|
regulator-name = "vcc_1v8_sys";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo1: ldo1 {
|
|
regulator-name = "vddshv5_sdio";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo2: ldo2 {
|
|
regulator-name = "vpp_1v8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo3: ldo3 {
|
|
regulator-name = "vcc_0v85";
|
|
regulator-min-microvolt = <850000>;
|
|
regulator-max-microvolt = <850000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo4: ldo4 {
|
|
regulator-name = "vdda_1v8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
};
|
|
};
|
|
};
|