1*4b591ed6SAlina Yu# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*4b591ed6SAlina Yu%YAML 1.2 3*4b591ed6SAlina Yu--- 4*4b591ed6SAlina Yu$id: http://devicetree.org/schemas/regulator/richtek,rtq2208.yaml# 5*4b591ed6SAlina Yu$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4b591ed6SAlina Yu 7*4b591ed6SAlina Yutitle: Richtek RTQ2208 SubPMIC Regulator 8*4b591ed6SAlina Yu 9*4b591ed6SAlina Yumaintainers: 10*4b591ed6SAlina Yu - Alina Yu <alina_yu@richtek.com> 11*4b591ed6SAlina Yu 12*4b591ed6SAlina Yudescription: | 13*4b591ed6SAlina Yu RTQ2208 is a highly integrated power converter that offers functional safety dual 14*4b591ed6SAlina Yu multi-configurable synchronous buck converters and two LDOs. 15*4b591ed6SAlina Yu 16*4b591ed6SAlina Yu Bucks support "regulator-allowed-modes" and "regulator-mode". The former defines the permitted 17*4b591ed6SAlina Yu switching operation in normal mode; the latter defines the operation in suspend to RAM mode. 18*4b591ed6SAlina Yu 19*4b591ed6SAlina Yu No matter the RTQ2208 is configured to normal or suspend to RAM mode, there are two switching 20*4b591ed6SAlina Yu operation modes for all buck rails, automatic power saving mode (Auto mode) and forced continuous 21*4b591ed6SAlina Yu conduction mode (FCCM). 22*4b591ed6SAlina Yu 23*4b591ed6SAlina Yu The definition of modes is in the datasheet which is available in below link 24*4b591ed6SAlina Yu and their meaning is:: 25*4b591ed6SAlina Yu 0 - Auto mode for power saving, which reducing the switching frequency at light load condition 26*4b591ed6SAlina Yu to maintain high frequency. 27*4b591ed6SAlina Yu 1 - FCCM to meet the strict voltage regulation accuracy, which keeping constant switching frequency. 28*4b591ed6SAlina Yu 29*4b591ed6SAlina Yu Datasheet will be available soon at 30*4b591ed6SAlina Yu https://www.richtek.com/assets/Products 31*4b591ed6SAlina Yu 32*4b591ed6SAlina Yuproperties: 33*4b591ed6SAlina Yu compatible: 34*4b591ed6SAlina Yu enum: 35*4b591ed6SAlina Yu - richtek,rtq2208 36*4b591ed6SAlina Yu 37*4b591ed6SAlina Yu reg: 38*4b591ed6SAlina Yu maxItems: 1 39*4b591ed6SAlina Yu 40*4b591ed6SAlina Yu interrupts: 41*4b591ed6SAlina Yu maxItems: 1 42*4b591ed6SAlina Yu 43*4b591ed6SAlina Yu richtek,mtp-sel-high: 44*4b591ed6SAlina Yu type: boolean 45*4b591ed6SAlina Yu description: 46*4b591ed6SAlina Yu vout register selection based on this boolean value. 47*4b591ed6SAlina Yu false - Using DVS0 register setting to adjust vout 48*4b591ed6SAlina Yu true - Using DVS1 register setting to adjust vout 49*4b591ed6SAlina Yu 50*4b591ed6SAlina Yu regulators: 51*4b591ed6SAlina Yu type: object 52*4b591ed6SAlina Yu additionalProperties: false 53*4b591ed6SAlina Yu 54*4b591ed6SAlina Yu patternProperties: 55*4b591ed6SAlina Yu "^buck-[a-h]$": 56*4b591ed6SAlina Yu type: object 57*4b591ed6SAlina Yu $ref: regulator.yaml# 58*4b591ed6SAlina Yu unevaluatedProperties: false 59*4b591ed6SAlina Yu description: 60*4b591ed6SAlina Yu description for buck-[a-h] regulator. 61*4b591ed6SAlina Yu 62*4b591ed6SAlina Yu properties: 63*4b591ed6SAlina Yu regulator-allowed-modes: 64*4b591ed6SAlina Yu description: 65*4b591ed6SAlina Yu two buck modes in different switching accuracy. 66*4b591ed6SAlina Yu 0 - Auto mode 67*4b591ed6SAlina Yu 1 - FCCM 68*4b591ed6SAlina Yu items: 69*4b591ed6SAlina Yu enum: [0, 1] 70*4b591ed6SAlina Yu 71*4b591ed6SAlina Yu "^ldo[1-2]$": 72*4b591ed6SAlina Yu type: object 73*4b591ed6SAlina Yu $ref: regulator.yaml# 74*4b591ed6SAlina Yu unevaluatedProperties: false 75*4b591ed6SAlina Yu description: 76*4b591ed6SAlina Yu regulator description for ldo[1-2]. 77*4b591ed6SAlina Yu 78*4b591ed6SAlina Yurequired: 79*4b591ed6SAlina Yu - compatible 80*4b591ed6SAlina Yu - reg 81*4b591ed6SAlina Yu - regulators 82*4b591ed6SAlina Yu 83*4b591ed6SAlina YuadditionalProperties: false 84*4b591ed6SAlina Yu 85*4b591ed6SAlina Yuexamples: 86*4b591ed6SAlina Yu - | 87*4b591ed6SAlina Yu #include <dt-bindings/interrupt-controller/irq.h> 88*4b591ed6SAlina Yu i2c { 89*4b591ed6SAlina Yu #address-cells = <1>; 90*4b591ed6SAlina Yu #size-cells = <0>; 91*4b591ed6SAlina Yu 92*4b591ed6SAlina Yu pmic@10 { 93*4b591ed6SAlina Yu compatible = "richtek,rtq2208"; 94*4b591ed6SAlina Yu reg = <0x10>; 95*4b591ed6SAlina Yu interrupts-extended = <&gpio26 0 IRQ_TYPE_LEVEL_LOW>; 96*4b591ed6SAlina Yu richtek,mtp-sel-high; 97*4b591ed6SAlina Yu 98*4b591ed6SAlina Yu regulators { 99*4b591ed6SAlina Yu buck-a { 100*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 101*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 102*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 103*4b591ed6SAlina Yu regulator-always-on; 104*4b591ed6SAlina Yu regulator-state-mem { 105*4b591ed6SAlina Yu regulator-on-in-suspend; 106*4b591ed6SAlina Yu regulator-mode = <1>; 107*4b591ed6SAlina Yu }; 108*4b591ed6SAlina Yu }; 109*4b591ed6SAlina Yu buck-b { 110*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 111*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 112*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 113*4b591ed6SAlina Yu regulator-always-on; 114*4b591ed6SAlina Yu regulator-state-mem { 115*4b591ed6SAlina Yu regulator-on-in-suspend; 116*4b591ed6SAlina Yu regulator-mode = <1>; 117*4b591ed6SAlina Yu }; 118*4b591ed6SAlina Yu }; 119*4b591ed6SAlina Yu buck-c { 120*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 121*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 122*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 123*4b591ed6SAlina Yu regulator-always-on; 124*4b591ed6SAlina Yu regulator-state-mem { 125*4b591ed6SAlina Yu regulator-on-in-suspend; 126*4b591ed6SAlina Yu regulator-mode = <1>; 127*4b591ed6SAlina Yu }; 128*4b591ed6SAlina Yu }; 129*4b591ed6SAlina Yu buck-d { 130*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 131*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 132*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 133*4b591ed6SAlina Yu regulator-always-on; 134*4b591ed6SAlina Yu regulator-state-mem { 135*4b591ed6SAlina Yu regulator-on-in-suspend; 136*4b591ed6SAlina Yu regulator-mode = <1>; 137*4b591ed6SAlina Yu }; 138*4b591ed6SAlina Yu }; 139*4b591ed6SAlina Yu buck-e { 140*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 141*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 142*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 143*4b591ed6SAlina Yu regulator-always-on; 144*4b591ed6SAlina Yu regulator-state-mem { 145*4b591ed6SAlina Yu regulator-on-in-suspend; 146*4b591ed6SAlina Yu regulator-mode = <1>; 147*4b591ed6SAlina Yu }; 148*4b591ed6SAlina Yu }; 149*4b591ed6SAlina Yu buck-f { 150*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 151*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 152*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 153*4b591ed6SAlina Yu regulator-always-on; 154*4b591ed6SAlina Yu regulator-state-mem { 155*4b591ed6SAlina Yu regulator-on-in-suspend; 156*4b591ed6SAlina Yu regulator-mode = <1>; 157*4b591ed6SAlina Yu }; 158*4b591ed6SAlina Yu }; 159*4b591ed6SAlina Yu buck-g { 160*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 161*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 162*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 163*4b591ed6SAlina Yu regulator-always-on; 164*4b591ed6SAlina Yu regulator-state-mem { 165*4b591ed6SAlina Yu regulator-on-in-suspend; 166*4b591ed6SAlina Yu regulator-mode = <1>; 167*4b591ed6SAlina Yu }; 168*4b591ed6SAlina Yu }; 169*4b591ed6SAlina Yu buck-h { 170*4b591ed6SAlina Yu regulator-min-microvolt = <400000>; 171*4b591ed6SAlina Yu regulator-max-microvolt = <2050000>; 172*4b591ed6SAlina Yu regulator-allowed-modes = <0 1>; 173*4b591ed6SAlina Yu regulator-always-on; 174*4b591ed6SAlina Yu regulator-state-mem { 175*4b591ed6SAlina Yu regulator-on-in-suspend; 176*4b591ed6SAlina Yu regulator-mode = <1>; 177*4b591ed6SAlina Yu }; 178*4b591ed6SAlina Yu }; 179*4b591ed6SAlina Yu ldo1 { 180*4b591ed6SAlina Yu regulator-min-microvolt = <1200000>; 181*4b591ed6SAlina Yu regulator-max-microvolt = <1200000>; 182*4b591ed6SAlina Yu regulator-always-on; 183*4b591ed6SAlina Yu regulator-state-mem { 184*4b591ed6SAlina Yu regulator-on-in-suspend; 185*4b591ed6SAlina Yu }; 186*4b591ed6SAlina Yu }; 187*4b591ed6SAlina Yu ldo2 { 188*4b591ed6SAlina Yu regulator-min-microvolt = <3300000>; 189*4b591ed6SAlina Yu regulator-max-microvolt = <3300000>; 190*4b591ed6SAlina Yu regulator-always-on; 191*4b591ed6SAlina Yu regulator-state-mem { 192*4b591ed6SAlina Yu regulator-on-in-suspend; 193*4b591ed6SAlina Yu }; 194*4b591ed6SAlina Yu }; 195*4b591ed6SAlina Yu }; 196*4b591ed6SAlina Yu }; 197*4b591ed6SAlina Yu }; 198