Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

regulator: Add bindings for Richtek RT5190A PMIC

Add bindings for Richtek RT5190A PMIC.

Signed-off-by: ChiYuan Huang <cy_huang@richtek.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/1646812903-32496-2-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

ChiYuan Huang and committed by
Mark Brown
b77e70f6 25947030

+156
+141
Documentation/devicetree/bindings/regulator/richtek,rt5190a-regulator.yaml
··· 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,rt5190a-regulator.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Richtek RT5190A PMIC Regulator 8 + 9 + maintainers: 10 + - ChiYuan Huang <cy_huang@richtek.com> 11 + 12 + description: | 13 + The RT5190A integrates 1 channel buck controller, 3 channels high efficiency 14 + synchronous buck converters, 1 LDO, I2C control interface and peripherial 15 + logical control. 16 + 17 + It also supports mute AC OFF depop sound and quick setting storage while 18 + input power is removed. 19 + 20 + properties: 21 + compatible: 22 + enum: 23 + - richtek,rt5190a 24 + 25 + reg: 26 + maxItems: 1 27 + 28 + interrupts: 29 + maxItems: 1 30 + 31 + vin2-supply: 32 + description: phandle to buck2 input voltage. 33 + 34 + vin3-supply: 35 + description: phandle to buck3 input voltage. 36 + 37 + vin4-supply: 38 + description: phandle to buck4 input voltage. 39 + 40 + vinldo-supply: 41 + description: phandle to ldo input voltage 42 + 43 + richtek,mute-enable: 44 + description: | 45 + The mute function uses 'mutein', 'muteout', and 'vdet' pins as the control 46 + signal. When enabled, The normal behavior is to bypass the 'mutein' signal 47 + 'muteout'. But if the power source removal is detected from 'vdet', 48 + whatever the 'mutein' signal is, it will pull down the 'muteout' to force 49 + speakers mute. this function is commonly used to prevent the speaker pop 50 + noise during AC power turned off in the modern TV system design. 51 + type: boolean 52 + 53 + regulators: 54 + type: object 55 + 56 + patternProperties: 57 + "^buck[1-4]$|^ldo$": 58 + type: object 59 + $ref: regulator.yaml# 60 + description: | 61 + regulator description for buck1 and buck4. 62 + 63 + properties: 64 + regulator-allowed-modes: 65 + description: | 66 + buck operating mode, only buck1/4 support mode operating. 67 + 0: auto mode 68 + 1: force pwm mode 69 + items: 70 + enum: [0, 1] 71 + 72 + richtek,latchup-enable: 73 + type: boolean 74 + description: | 75 + If specified, undervolt protection mode changes from the default 76 + hiccup to latchup. 77 + 78 + unevaluatedProperties: false 79 + 80 + additionalProperties: false 81 + 82 + required: 83 + - compatible 84 + - reg 85 + - regulators 86 + 87 + additionalProperties: false 88 + 89 + examples: 90 + - | 91 + #include <dt-bindings/interrupt-controller/irq.h> 92 + #include <dt-bindings/regulator/richtek,rt5190a-regulator.h> 93 + 94 + i2c { 95 + #address-cells = <1>; 96 + #size-cells = <0>; 97 + 98 + pmic@64 { 99 + compatible = "richtek,rt5190a"; 100 + reg = <0x64>; 101 + interrupts-extended = <&gpio26 0 IRQ_TYPE_LEVEL_LOW>; 102 + vin2-supply = <&rt5190_buck1>; 103 + vin3-supply = <&rt5190_buck1>; 104 + vin4-supply = <&rt5190_buck1>; 105 + 106 + regulators { 107 + rt5190_buck1: buck1 { 108 + regulator-name = "rt5190a-buck1"; 109 + regulator-min-microvolt = <5090000>; 110 + regulator-max-microvolt = <5090000>; 111 + regulator-allowed-modes = <RT5190A_OPMODE_AUTO RT5190A_OPMODE_FPWM>; 112 + regulator-boot-on; 113 + }; 114 + buck2 { 115 + regulator-name = "rt5190a-buck2"; 116 + regulator-min-microvolt = <600000>; 117 + regulator-max-microvolt = <1400000>; 118 + regulator-boot-on; 119 + }; 120 + buck3 { 121 + regulator-name = "rt5190a-buck3"; 122 + regulator-min-microvolt = <600000>; 123 + regulator-max-microvolt = <1400000>; 124 + regulator-boot-on; 125 + }; 126 + buck4 { 127 + regulator-name = "rt5190a-buck4"; 128 + regulator-min-microvolt = <850000>; 129 + regulator-max-microvolt = <850000>; 130 + regulator-allowed-modes = <RT5190A_OPMODE_AUTO RT5190A_OPMODE_FPWM>; 131 + regulator-boot-on; 132 + }; 133 + ldo { 134 + regulator-name = "rt5190a-ldo"; 135 + regulator-min-microvolt = <1200000>; 136 + regulator-max-microvolt = <1200000>; 137 + regulator-boot-on; 138 + }; 139 + }; 140 + }; 141 + };
+15
include/dt-bindings/regulator/richtek,rt5190a-regulator.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0 */ 2 + 3 + #ifndef __DT_BINDINGS_RICHTEK_RT5190A_REGULATOR_H__ 4 + #define __DT_BINDINGS_RICHTEK_RT5190A_REGULATOR_H__ 5 + 6 + /* 7 + * BUCK/LDO mode constants which may be used in devicetree properties 8 + * (eg. regulator-allowed-modes). 9 + * See the manufacturer's datasheet for more information on these modes. 10 + */ 11 + 12 + #define RT5190A_OPMODE_AUTO 0 13 + #define RT5190A_OPMODE_FPWM 1 14 + 15 + #endif