205 lines
6.4 KiB
YAML
205 lines
6.4 KiB
YAML
|
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/mfd/rohm,bd71828-pmic.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: ROHM BD71828 Power Management Integrated Circuit
|
||
|
|
||
|
maintainers:
|
||
|
- Matti Vaittinen <mazziesaccount@gmail.com>
|
||
|
|
||
|
description: |
|
||
|
BD71828GW is a single-chip power management IC for battery-powered portable
|
||
|
devices. The IC integrates 7 buck converters, 7 LDOs, and a 1500 mA
|
||
|
single-cell linear charger. Also included is a Coulomb counter, a real-time
|
||
|
clock (RTC), and a 32.768 kHz clock gate.
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
const: rohm,bd71828
|
||
|
|
||
|
reg:
|
||
|
description:
|
||
|
I2C slave address.
|
||
|
maxItems: 1
|
||
|
|
||
|
interrupts:
|
||
|
maxItems: 1
|
||
|
|
||
|
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.
|
||
|
|
||
|
clocks:
|
||
|
maxItems: 1
|
||
|
|
||
|
"#clock-cells":
|
||
|
const: 0
|
||
|
|
||
|
clock-output-names:
|
||
|
const: bd71828-32k-out
|
||
|
|
||
|
rohm,clkout-open-drain:
|
||
|
description: clk32kout mode. Set to 1 for "open-drain" or 0 for "cmos".
|
||
|
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||
|
minimum: 0
|
||
|
maximum: 1
|
||
|
|
||
|
rohm,charger-sense-resistor-ohms:
|
||
|
minimum: 10000000
|
||
|
maximum: 50000000
|
||
|
description: |
|
||
|
BD71827 and BD71828 have SAR ADC for measuring charging currents.
|
||
|
External sense resistor (RSENSE in data sheet) should be used. If some
|
||
|
other but 30MOhm resistor is used the resistance value should be given
|
||
|
here in Ohms.
|
||
|
|
||
|
regulators:
|
||
|
$ref: ../regulator/rohm,bd71828-regulator.yaml
|
||
|
description:
|
||
|
List of child nodes that specify the regulators.
|
||
|
|
||
|
leds:
|
||
|
$ref: ../leds/rohm,bd71828-leds.yaml
|
||
|
|
||
|
gpio-reserved-ranges:
|
||
|
description: |
|
||
|
Usage of BD71828 GPIO pins can be changed via OTP. This property can be
|
||
|
used to mark the pins which should not be configured for GPIO. Please see
|
||
|
the ../gpio/gpio.txt for more information.
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
- reg
|
||
|
- interrupts
|
||
|
- clocks
|
||
|
- "#clock-cells"
|
||
|
- regulators
|
||
|
- gpio-controller
|
||
|
- "#gpio-cells"
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/interrupt-controller/irq.h>
|
||
|
#include <dt-bindings/leds/common.h>
|
||
|
i2c {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
pmic: pmic@4b {
|
||
|
compatible = "rohm,bd71828";
|
||
|
reg = <0x4b>;
|
||
|
|
||
|
interrupt-parent = <&gpio1>;
|
||
|
interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
|
||
|
|
||
|
clocks = <&osc 0>;
|
||
|
#clock-cells = <0>;
|
||
|
clock-output-names = "bd71828-32k-out";
|
||
|
|
||
|
gpio-controller;
|
||
|
#gpio-cells = <2>;
|
||
|
gpio-reserved-ranges = <0 1>, <2 1>;
|
||
|
|
||
|
rohm,charger-sense-resistor-ohms = <10000000>;
|
||
|
|
||
|
regulators {
|
||
|
buck1: BUCK1 {
|
||
|
regulator-name = "buck1";
|
||
|
regulator-min-microvolt = <500000>;
|
||
|
regulator-max-microvolt = <2000000>;
|
||
|
regulator-ramp-delay = <2500>;
|
||
|
};
|
||
|
buck2: BUCK2 {
|
||
|
regulator-name = "buck2";
|
||
|
regulator-min-microvolt = <500000>;
|
||
|
regulator-max-microvolt = <2000000>;
|
||
|
regulator-ramp-delay = <2500>;
|
||
|
};
|
||
|
buck3: BUCK3 {
|
||
|
regulator-name = "buck3";
|
||
|
regulator-min-microvolt = <1200000>;
|
||
|
regulator-max-microvolt = <2000000>;
|
||
|
};
|
||
|
buck4: BUCK4 {
|
||
|
regulator-name = "buck4";
|
||
|
regulator-min-microvolt = <1000000>;
|
||
|
regulator-max-microvolt = <1800000>;
|
||
|
};
|
||
|
buck5: BUCK5 {
|
||
|
regulator-name = "buck5";
|
||
|
regulator-min-microvolt = <2500000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
buck6: BUCK6 {
|
||
|
regulator-name = "buck6";
|
||
|
regulator-min-microvolt = <500000>;
|
||
|
regulator-max-microvolt = <2000000>;
|
||
|
regulator-ramp-delay = <2500>;
|
||
|
};
|
||
|
buck7: BUCK7 {
|
||
|
regulator-name = "buck7";
|
||
|
regulator-min-microvolt = <500000>;
|
||
|
regulator-max-microvolt = <2000000>;
|
||
|
regulator-ramp-delay = <2500>;
|
||
|
};
|
||
|
ldo1: LDO1 {
|
||
|
regulator-name = "ldo1";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
ldo2: LDO2 {
|
||
|
regulator-name = "ldo2";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
ldo3: LDO3 {
|
||
|
regulator-name = "ldo3";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
ldo4: LDO4 {
|
||
|
regulator-name = "ldo4";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
ldo5: LDO5 {
|
||
|
regulator-name = "ldo5";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
ldo6: LDO6 {
|
||
|
regulator-name = "ldo6";
|
||
|
regulator-min-microvolt = <1800000>;
|
||
|
regulator-max-microvolt = <1800000>;
|
||
|
};
|
||
|
ldo7_reg: LDO7 {
|
||
|
regulator-name = "ldo7";
|
||
|
regulator-min-microvolt = <800000>;
|
||
|
regulator-max-microvolt = <3300000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
leds {
|
||
|
compatible = "rohm,bd71828-leds";
|
||
|
|
||
|
led-1 {
|
||
|
rohm,led-compatible = "bd71828-grnled";
|
||
|
function = LED_FUNCTION_INDICATOR;
|
||
|
color = <LED_COLOR_ID_GREEN>;
|
||
|
};
|
||
|
led-2 {
|
||
|
rohm,led-compatible = "bd71828-ambled";
|
||
|
function = LED_FUNCTION_CHARGING;
|
||
|
color = <LED_COLOR_ID_AMBER>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|