1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mfd/richtek,rt5033.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Richtek RT5033 Power Management Integrated Circuit 8 9maintainers: 10 - Jakob Hauser <jahau@rocketmail.com> 11 12description: 13 RT5033 is a multifunction device which includes battery charger, fuel gauge, 14 flash LED current source, LDO and synchronous Buck converter for portable 15 applications. It is interfaced to host controller using I2C interface. The 16 battery fuel gauge uses a separate I2C bus. 17 18properties: 19 compatible: 20 const: richtek,rt5033 21 22 reg: 23 maxItems: 1 24 25 interrupts: 26 maxItems: 1 27 28 regulators: 29 description: 30 The regulators of RT5033 have to be instantiated under a sub-node named 31 "regulators". For SAFE_LDO voltage there is only one value of 4.9 V. LDO 32 voltage ranges from 1.2 V to 3.0 V in 0.1 V steps. BUCK voltage ranges 33 from 1.0 V to 3.0 V in 0.1 V steps. 34 type: object 35 patternProperties: 36 "^(SAFE_LDO|LDO|BUCK)$": 37 type: object 38 $ref: /schemas/regulator/regulator.yaml# 39 unevaluatedProperties: false 40 additionalProperties: false 41 42 charger: 43 type: object 44 $ref: /schemas/power/supply/richtek,rt5033-charger.yaml# 45 46required: 47 - compatible 48 - reg 49 - interrupts 50 51additionalProperties: false 52 53examples: 54 - | 55 #include <dt-bindings/interrupt-controller/irq.h> 56 57 battery: battery { 58 compatible = "simple-battery"; 59 precharge-current-microamp = <450000>; 60 constant-charge-current-max-microamp = <1000000>; 61 charge-term-current-microamp = <150000>; 62 precharge-upper-limit-microvolt = <3500000>; 63 constant-charge-voltage-max-microvolt = <4350000>; 64 }; 65 66 extcon { 67 usb_con: connector { 68 compatible = "usb-b-connector"; 69 label = "micro-USB"; 70 type = "micro"; 71 }; 72 }; 73 74 i2c { 75 #address-cells = <1>; 76 #size-cells = <0>; 77 78 i2c@0 { 79 #address-cells = <1>; 80 #size-cells = <0>; 81 reg = <0>; 82 83 fuel-gauge@35 { 84 compatible = "richtek,rt5033-battery"; 85 reg = <0x35>; 86 87 interrupt-parent = <&msmgpio>; 88 interrupts = <121 IRQ_TYPE_EDGE_FALLING>; 89 90 pinctrl-names = "default"; 91 pinctrl-0 = <&fg_alert_default>; 92 93 power-supplies = <&rt5033_charger>; 94 }; 95 }; 96 97 i2c@1 { 98 #address-cells = <1>; 99 #size-cells = <0>; 100 reg = <1>; 101 102 pmic@34 { 103 compatible = "richtek,rt5033"; 104 reg = <0x34>; 105 106 interrupt-parent = <&msmgpio>; 107 interrupts = <62 IRQ_TYPE_EDGE_FALLING>; 108 109 pinctrl-names = "default"; 110 pinctrl-0 = <&pmic_int_default>; 111 112 regulators { 113 safe_ldo_reg: SAFE_LDO { 114 regulator-name = "SAFE_LDO"; 115 regulator-min-microvolt = <4900000>; 116 regulator-max-microvolt = <4900000>; 117 regulator-always-on; 118 }; 119 ldo_reg: LDO { 120 regulator-name = "LDO"; 121 regulator-min-microvolt = <2800000>; 122 regulator-max-microvolt = <2800000>; 123 }; 124 buck_reg: BUCK { 125 regulator-name = "BUCK"; 126 regulator-min-microvolt = <1200000>; 127 regulator-max-microvolt = <1200000>; 128 }; 129 }; 130 131 rt5033_charger: charger { 132 compatible = "richtek,rt5033-charger"; 133 monitored-battery = <&battery>; 134 richtek,usb-connector = <&usb_con>; 135 }; 136 }; 137 }; 138 }; 139