1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/regulator/pfuze100.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: PFUZE100 family of regulators 8 9maintainers: 10 - Robin Gong <yibin.gong@nxp.com> 11 12description: | 13 The valid names for regulators are: 14 --PFUZE100 15 sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6 16 --PFUZE200 17 sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin 18 --PFUZE3000 19 sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4 20 --PFUZE3001 21 sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4 22 23 Each regulator is defined using the standard binding for regulators. 24 25properties: 26 $nodename: 27 pattern: "^pmic@[0-9]$" 28 29 compatible: 30 enum: 31 - fsl,pfuze100 32 - fsl,pfuze200 33 - fsl,pfuze3000 34 - fsl,pfuze3001 35 36 reg: 37 maxItems: 1 38 39 interrupts: 40 maxItems: 1 41 42 fsl,pfuze-support-disable-sw: 43 $ref: /schemas/types.yaml#/definitions/flag 44 description: | 45 Boolean, if present disable all unused switch regulators to save power 46 consumption. Attention, ensure that all important regulators 47 (e.g. DDR ref, DDR supply) has set the "regulator-always-on" property. 48 If not present, the switched regulators are always on and can't be 49 disabled. This binding is a workaround to keep backward compatibility 50 with old dtb's which rely on the fact that the switched regulators are 51 always on and don't mark them explicit as "regulator-always-on". 52 53 fsl,pmic-stby-poweroff: 54 $ref: /schemas/types.yaml#/definitions/flag 55 description: | 56 if present, configure the PMIC to shutdown all 57 power rails when PMIC_STBY_REQ line is asserted during the power off sequence. 58 Use this option if the SoC should be powered off by external power management 59 IC (PMIC) on PMIC_STBY_REQ signal. 60 As opposite to PMIC_STBY_REQ boards can implement PMIC_ON_REQ signal. 61 62 regulators: 63 type: object 64 description: | 65 list of regulators provided by this controller. 66 67 patternProperties: 68 "^sw([1-4]|[1-4][a-c]|[1-4][a-c][a-c])$": 69 $ref: regulator.yaml# 70 type: object 71 unevaluatedProperties: false 72 73 "^vgen[1-6]$": 74 $ref: regulator.yaml# 75 type: object 76 unevaluatedProperties: false 77 78 "^vldo[1-4]$": 79 $ref: regulator.yaml# 80 type: object 81 unevaluatedProperties: false 82 83 "^(vsnvs|vref|vrefddr|swbst|coin|v33|vccsd)$": 84 $ref: regulator.yaml# 85 type: object 86 unevaluatedProperties: false 87 88 additionalProperties: false 89 90required: 91 - compatible 92 - reg 93 94additionalProperties: false 95 96examples: 97 - | 98 i2c { 99 #address-cells = <1>; 100 #size-cells = <0>; 101 102 pmic@8 { 103 compatible = "fsl,pfuze100"; 104 reg = <0x08>; 105 106 regulators { 107 sw1a_reg: sw1ab { 108 regulator-min-microvolt = <300000>; 109 regulator-max-microvolt = <1875000>; 110 regulator-boot-on; 111 regulator-always-on; 112 regulator-ramp-delay = <6250>; 113 }; 114 115 sw1c_reg: sw1c { 116 regulator-min-microvolt = <300000>; 117 regulator-max-microvolt = <1875000>; 118 regulator-boot-on; 119 regulator-always-on; 120 }; 121 122 sw2_reg: sw2 { 123 regulator-min-microvolt = <800000>; 124 regulator-max-microvolt = <3300000>; 125 regulator-boot-on; 126 regulator-always-on; 127 }; 128 129 sw3a_reg: sw3a { 130 regulator-min-microvolt = <400000>; 131 regulator-max-microvolt = <1975000>; 132 regulator-boot-on; 133 regulator-always-on; 134 }; 135 136 sw3b_reg: sw3b { 137 regulator-min-microvolt = <400000>; 138 regulator-max-microvolt = <1975000>; 139 regulator-boot-on; 140 regulator-always-on; 141 }; 142 143 sw4_reg: sw4 { 144 regulator-min-microvolt = <800000>; 145 regulator-max-microvolt = <3300000>; 146 }; 147 148 swbst_reg: swbst { 149 regulator-min-microvolt = <5000000>; 150 regulator-max-microvolt = <5150000>; 151 }; 152 153 snvs_reg: vsnvs { 154 regulator-min-microvolt = <1000000>; 155 regulator-max-microvolt = <3000000>; 156 regulator-boot-on; 157 regulator-always-on; 158 }; 159 160 vref_reg: vrefddr { 161 regulator-boot-on; 162 regulator-always-on; 163 }; 164 165 vgen1_reg: vgen1 { 166 regulator-min-microvolt = <800000>; 167 regulator-max-microvolt = <1550000>; 168 }; 169 170 vgen2_reg: vgen2 { 171 regulator-min-microvolt = <800000>; 172 regulator-max-microvolt = <1550000>; 173 }; 174 175 vgen3_reg: vgen3 { 176 regulator-min-microvolt = <1800000>; 177 regulator-max-microvolt = <3300000>; 178 }; 179 180 vgen4_reg: vgen4 { 181 regulator-min-microvolt = <1800000>; 182 regulator-max-microvolt = <3300000>; 183 regulator-always-on; 184 }; 185 186 vgen5_reg: vgen5 { 187 regulator-min-microvolt = <1800000>; 188 regulator-max-microvolt = <3300000>; 189 regulator-always-on; 190 }; 191 192 vgen6_reg: vgen6 { 193 regulator-min-microvolt = <1800000>; 194 regulator-max-microvolt = <3300000>; 195 regulator-always-on; 196 }; 197 }; 198 }; 199 }; 200