The BeagleV Starlight v0.9 board[1] doesn't have the IRQB line routed to the SoC, but it is still useful to be able to reach the PMIC over I2C for the other functionality it provides such as GPIOs and regulator settings. [1] https://github.com/beagleboard/beaglev-starlight Signed-off-by: Emil Renner Berthing <kernel@esmil.dk> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Lee Jones <lee.jones@linaro.org>
125 lines
3.2 KiB
YAML
125 lines
3.2 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: TPS65086 Power Management Integrated Circuit (PMIC)
|
|
|
|
maintainers:
|
|
- Emil Renner Berthing <kernel@esmil.dk>
|
|
|
|
properties:
|
|
compatible:
|
|
const: ti,tps65086
|
|
|
|
reg:
|
|
const: 0x5e
|
|
description: I2C slave address
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
interrupt-controller: true
|
|
|
|
'#interrupt-cells':
|
|
const: 2
|
|
description: |
|
|
The first cell is the IRQ number. The second cell is the flags,
|
|
encoded as trigger masks from ../interrupt-controller/interrupts.txt.
|
|
|
|
gpio-controller: true
|
|
|
|
'#gpio-cells':
|
|
const: 2
|
|
description: |
|
|
The first cell is the pin number and the second cell is used to specify
|
|
flags. See ../gpio/gpio.txt for more information.
|
|
|
|
regulators:
|
|
type: object
|
|
description: |
|
|
List of child nodes that specify the regulator initialization data.
|
|
Child nodes must be named after their hardware counterparts:
|
|
buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt.
|
|
Each child node is defined using the standard binding for regulators and
|
|
the optional regulator properties defined below.
|
|
|
|
patternProperties:
|
|
"^buck[1-6]$":
|
|
type: object
|
|
$ref: ../regulator/regulator.yaml
|
|
|
|
properties:
|
|
regulator-name: true
|
|
regulator-boot-on: true
|
|
regulator-always-on: true
|
|
regulator-min-microvolt: true
|
|
regulator-max-microvolt: true
|
|
ti,regulator-step-size-25mv:
|
|
type: boolean
|
|
description: |
|
|
Set this if the regulator is factory set with a 25mv step voltage
|
|
mapping.
|
|
ti,regulator-decay:
|
|
type: boolean
|
|
description: |
|
|
Set this if the output needs to decay, default is for the output
|
|
to slew down.
|
|
|
|
additionalProperties: false
|
|
|
|
"^(ldoa[1-3]|swa1|swb[1-2]|vtt)$":
|
|
type: object
|
|
$ref: ../regulator/regulator.yaml
|
|
|
|
properties:
|
|
regulator-name: true
|
|
regulator-boot-on: true
|
|
regulator-always-on: true
|
|
regulator-min-microvolt: true
|
|
regulator-max-microvolt: true
|
|
|
|
additionalProperties: false
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- gpio-controller
|
|
- '#gpio-cells'
|
|
- regulators
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
i2c0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pmic: pmic@5e {
|
|
compatible = "ti,tps65086";
|
|
reg = <0x5e>;
|
|
interrupt-parent = <&gpio1>;
|
|
interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
|
|
interrupt-controller;
|
|
#interrupt-cells = <2>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
|
|
regulators {
|
|
buck1 {
|
|
regulator-name = "vcc1";
|
|
regulator-min-microvolt = <1600000>;
|
|
regulator-max-microvolt = <1600000>;
|
|
regulator-boot-on;
|
|
ti,regulator-decay;
|
|
ti,regulator-step-size-25mv;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
...
|