Skip to content

Commit 266d57d

Browse files
committed
regulator Add Richtek RT5759 buck converter support
Merge series from cy_huang <u0084500@gmail.com>: This patch series add Richtek RT5759 buck converter support.
2 parents 4917e54 + 2a826d9 commit 266d57d

4 files changed

Lines changed: 470 additions & 0 deletions

File tree

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/regulator/richtek,rt5759-regulator.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Richtek RT5759 High Performance DCDC Converter
8+
9+
maintainers:
10+
- ChiYuan Huang <cy_huang@richtek.com>
11+
12+
description: |
13+
The RT5759 is a high-performance, synchronous step-down DC-DC converter that
14+
can deliver up to 9A output current from 3V to 6.5V input supply, The output
15+
voltage can be programmable with I2C controlled 7-Bit VID.
16+
17+
Datasheet is available at
18+
https://www.richtek.com/assets/product_file/RT5759/DS5759-00.pdf
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- richtek,rt5759
24+
- richtek,rt5759a
25+
26+
reg:
27+
maxItems: 1
28+
29+
regulator-allowed-modes:
30+
description: |
31+
buck allowed operating mode
32+
0: auto mode (PSKIP: pulse skipping)
33+
1: force pwm mode
34+
items:
35+
enum: [0, 1]
36+
37+
richtek,watchdog-enable:
38+
description: enable the external watchdog reset pin listening
39+
type: boolean
40+
41+
allOf:
42+
- $ref: regulator.yaml#
43+
44+
- if:
45+
properties:
46+
compatible:
47+
contains:
48+
const: richtek,rt5759
49+
then:
50+
properties:
51+
richtek,watchdog-enable: false
52+
53+
required:
54+
- compatible
55+
- reg
56+
57+
unevaluatedProperties: false
58+
59+
examples:
60+
# example 1 for RT5759
61+
- |
62+
i2c {
63+
#address-cells = <1>;
64+
#size-cells = <0>;
65+
66+
regulator@62 {
67+
compatible = "richtek,rt5759";
68+
reg = <0x62>;
69+
regulator-name = "rt5759-buck";
70+
regulator-min-microvolt = <600000>;
71+
regulator-max-microvolt = <1500000>;
72+
regulator-boot-on;
73+
};
74+
};
75+
# example 2 for RT5759A
76+
- |
77+
i2c {
78+
#address-cells = <1>;
79+
#size-cells = <0>;
80+
81+
regulator@62 {
82+
compatible = "richtek,rt5759a";
83+
reg = <0x62>;
84+
regulator-name = "rt5759a-buck";
85+
regulator-min-microvolt = <600000>;
86+
regulator-max-microvolt = <1725000>;
87+
regulator-boot-on;
88+
richtek,watchdog-enable;
89+
};
90+
};

drivers/regulator/Kconfig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1057,6 +1057,16 @@ config REGULATOR_RT5190A
10571057
buck converters, 1 LDO, mute AC OFF depop function, with the general
10581058
I2C control interface.
10591059

1060+
config REGULATOR_RT5759
1061+
tristate "Richtek RT5759 Regulator"
1062+
depends on I2C
1063+
select REGMAP_I2C
1064+
help
1065+
This adds support for voltage regulator in Richtek RT5759.
1066+
The RT5759 is a high-performance, synchronous step-down DC-DC
1067+
converter that can deliver up to 9A output current from 3V to 6.5V
1068+
input supply.
1069+
10601070
config REGULATOR_RT6160
10611071
tristate "Richtek RT6160 BuckBoost voltage regulator"
10621072
depends on I2C

drivers/regulator/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ obj-$(CONFIG_REGULATOR_RT4801) += rt4801-regulator.o
127127
obj-$(CONFIG_REGULATOR_RT4831) += rt4831-regulator.o
128128
obj-$(CONFIG_REGULATOR_RT5033) += rt5033-regulator.o
129129
obj-$(CONFIG_REGULATOR_RT5190A) += rt5190a-regulator.o
130+
obj-$(CONFIG_REGULATOR_RT5759) += rt5759-regulator.o
130131
obj-$(CONFIG_REGULATOR_RT6160) += rt6160-regulator.o
131132
obj-$(CONFIG_REGULATOR_RT6245) += rt6245-regulator.o
132133
obj-$(CONFIG_REGULATOR_RTMV20) += rtmv20-regulator.o

0 commit comments

Comments
 (0)