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

dt-bindings: bd718x7: Yamlify and add BD71850

Convert ROHM bd71837 and bd71847 PMIC binding text docs to yaml. Split
the binding document to two separate documents (own documents for BD71837
and BD71847) as they have different amount of regulators. This way we can
better enforce the node name check for regulators. ROHM is also providing
BD71850 - which is almost identical to BD71847 - main difference is some
initial regulator states. The BD71850 can be driven by same driver and it
has same buck/LDO setup as BD71847 - add it to BD71847 binding document and
introduce compatible for it.

Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>

authored by

Matti Vaittinen and committed by
Lee Jones
a045f357 fb945c95

+658 -252
-90
Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
··· 1 - * ROHM BD71837 and BD71847 Power Management Integrated Circuit bindings 2 - 3 - BD71837MWV and BD71847MWV are programmable Power Management ICs for powering 4 - single-core, dual-core, and quad-core SoCs such as NXP-i.MX 8M. They are 5 - optimized for low BOM cost and compact solution footprint. BD71837MWV 6 - integrates 8 Buck regulators and 7 LDOs. BD71847MWV contains 6 Buck regulators 7 - and 6 LDOs. 8 - 9 - Datasheet for BD71837 is available at: 10 - https://www.rohm.com/datasheet/BD71837MWV/bd71837mwv-e 11 - Datasheet for BD71847 is available at: 12 - https://www.rohm.com/datasheet/BD71847AMWV/bd71847amwv-e 13 - 14 - Required properties: 15 - - compatible : Should be "rohm,bd71837" for bd71837 16 - "rohm,bd71847" for bd71847. 17 - - reg : I2C slave address. 18 - - interrupt-parent : Phandle to the parent interrupt controller. 19 - - interrupts : The interrupt line the device is connected to. 20 - - clocks : The parent clock connected to PMIC. If this is missing 21 - 32768 KHz clock is assumed. 22 - - #clock-cells : Should be 0. 23 - - regulators: : List of child nodes that specify the regulators. 24 - Please see ../regulator/rohm,bd71837-regulator.txt 25 - 26 - Optional properties: 27 - - clock-output-names : Should contain name for output clock. 28 - - rohm,reset-snvs-powered : Transfer BD718x7 to SNVS state at reset. 29 - 30 - The BD718x7 supports two different HW states as reset target states. States 31 - are called as SNVS and READY. At READY state all the PMIC power outputs go 32 - down and OTP is reload. At the SNVS state all other logic and external 33 - devices apart from the SNVS power domain are shut off. Please refer to NXP 34 - i.MX8 documentation for further information regarding SNVS state. When a 35 - reset is done via SNVS state the PMIC OTP data is not reload. This causes 36 - power outputs that have been under SW control to stay down when reset has 37 - switched power state to SNVS. If reset is done via READY state the power 38 - outputs will be returned to HW control by OTP loading. Thus the reset 39 - target state is set to READY by default. If SNVS state is used the boot 40 - crucial regulators must have the regulator-always-on and regulator-boot-on 41 - properties set in regulator node. 42 - 43 - - rohm,short-press-ms : Short press duration in milliseconds 44 - - rohm,long-press-ms : Long press duration in milliseconds 45 - 46 - Configure the "short press" and "long press" timers for the power button. 47 - Values are rounded to what hardware supports (500ms multiple for short and 48 - 1000ms multiple for long). If these properties are not present the existing 49 - configuration (from bootloader or OTP) is not touched. 50 - 51 - Example: 52 - 53 - /* external oscillator node */ 54 - osc: oscillator { 55 - compatible = "fixed-clock"; 56 - #clock-cells = <1>; 57 - clock-frequency = <32768>; 58 - clock-output-names = "osc"; 59 - }; 60 - 61 - pmic: pmic@4b { 62 - compatible = "rohm,bd71837"; 63 - reg = <0x4b>; 64 - interrupt-parent = <&gpio1>; 65 - interrupts = <29 GPIO_ACTIVE_LOW>; 66 - interrupt-names = "irq"; 67 - #clock-cells = <0>; 68 - clocks = <&osc 0>; 69 - clock-output-names = "bd71837-32k-out"; 70 - rohm,reset-snvs-powered; 71 - 72 - regulators { 73 - buck1: BUCK1 { 74 - regulator-name = "buck1"; 75 - regulator-min-microvolt = <700000>; 76 - regulator-max-microvolt = <1300000>; 77 - regulator-boot-on; 78 - regulator-always-on; 79 - regulator-ramp-delay = <1250>; 80 - }; 81 - // [...] 82 - }; 83 - }; 84 - 85 - /* Clock consumer node */ 86 - rtc@0 { 87 - compatible = "company,my-rtc"; 88 - clock-names = "my-clock"; 89 - clocks = <&pmic>; 90 - };
+236
Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/mfd/rohm,bd71837-pmic.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: ROHM BD71837 Power Management Integrated Circuit bindings 8 + 9 + maintainers: 10 + - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> 11 + 12 + description: | 13 + BD71837MWV is programmable Power Management ICs for powering single-core, 14 + dual-core, and quad-core SoCs such as NXP-i.MX 8M. It is optimized for low 15 + BOM cost and compact solution footprint. BD71837MWV integrates 8 Buck 16 + regulators and 7 LDOs. 17 + Datasheet for BD71837 is available at 18 + https://www.rohm.com/products/power-management/power-management-ic-for-system/industrial-consumer-applications/nxp-imx/bd71837amwv-product 19 + 20 + properties: 21 + compatible: 22 + const: rohm,bd71837 23 + 24 + reg: 25 + description: 26 + I2C slave address. 27 + maxItems: 1 28 + 29 + interrupts: 30 + maxItems: 1 31 + 32 + clocks: 33 + maxItems: 1 34 + 35 + "#clock-cells": 36 + const: 0 37 + 38 + # The BD718x7 supports two different HW states as reset target states. States 39 + # are called as SNVS and READY. At READY state all the PMIC power outputs go 40 + # down and OTP is reload. At the SNVS state all other logic and external 41 + # devices apart from the SNVS power domain are shut off. Please refer to NXP 42 + # i.MX8 documentation for further information regarding SNVS state. When a 43 + # reset is done via SNVS state the PMIC OTP data is not reload. This causes 44 + # power outputs that have been under SW control to stay down when reset has 45 + # switched power state to SNVS. If reset is done via READY state the power 46 + # outputs will be returned to HW control by OTP loading. Thus the reset 47 + # target state is set to READY by default. If SNVS state is used the boot 48 + # crucial regulators must have the regulator-always-on and regulator-boot-on 49 + # properties set in regulator node. 50 + 51 + rohm,reset-snvs-powered: 52 + description: | 53 + Transfer PMIC to SNVS state at reset 54 + type: boolean 55 + 56 + # Configure the "short press" and "long press" timers for the power button. 57 + # Values are rounded to what hardware supports 58 + # Short-press: 59 + # Shortest being 10ms, next 500ms and then multiple of 500ms up to 7,5s 60 + # Long-press: 61 + # Shortest being 10ms, next 1000ms and then multiple of 1000ms up to 15s 62 + # If these properties are not present the existing configuration (from 63 + # bootloader or OTP) is not touched. 64 + 65 + rohm,short-press-ms: 66 + description: 67 + Short press duration in milliseconds 68 + enum: 69 + - 10 70 + - 500 71 + - 1000 72 + - 1500 73 + - 2000 74 + - 2500 75 + - 3000 76 + - 3500 77 + - 4000 78 + - 4500 79 + - 5000 80 + - 5500 81 + - 6000 82 + - 6500 83 + - 7000 84 + 85 + rohm,long-press-ms: 86 + description: 87 + Long press duration in milliseconds 88 + enum: 89 + - 10 90 + - 1000 91 + - 2000 92 + - 3000 93 + - 4000 94 + - 5000 95 + - 6000 96 + - 7000 97 + - 8000 98 + - 9000 99 + - 10000 100 + - 11000 101 + - 12000 102 + - 13000 103 + - 14000 104 + 105 + regulators: 106 + $ref: ../regulator/rohm,bd71837-regulator.yaml 107 + description: 108 + List of child nodes that specify the regulators. 109 + 110 + required: 111 + - compatible 112 + - reg 113 + - interrupts 114 + - clocks 115 + - "#clock-cells" 116 + - regulators 117 + 118 + additionalProperties: false 119 + 120 + examples: 121 + - | 122 + #include <dt-bindings/interrupt-controller/irq.h> 123 + #include <dt-bindings/leds/common.h> 124 + 125 + i2c { 126 + pmic: pmic@4b { 127 + compatible = "rohm,bd71837"; 128 + reg = <0x4b>; 129 + interrupt-parent = <&gpio1>; 130 + interrupts = <29 IRQ_TYPE_LEVEL_LOW>; 131 + #clock-cells = <0>; 132 + clocks = <&osc 0>; 133 + rohm,reset-snvs-powered; 134 + rohm,short-press-ms = <10>; 135 + rohm,long-press-ms = <2000>; 136 + 137 + regulators { 138 + buck1: BUCK1 { 139 + regulator-name = "buck1"; 140 + regulator-min-microvolt = <700000>; 141 + regulator-max-microvolt = <1300000>; 142 + regulator-boot-on; 143 + regulator-always-on; 144 + regulator-ramp-delay = <1250>; 145 + rohm,dvs-run-voltage = <900000>; 146 + rohm,dvs-idle-voltage = <850000>; 147 + rohm,dvs-suspend-voltage = <800000>; 148 + }; 149 + buck2: BUCK2 { 150 + regulator-name = "buck2"; 151 + regulator-min-microvolt = <700000>; 152 + regulator-max-microvolt = <1300000>; 153 + regulator-boot-on; 154 + regulator-always-on; 155 + regulator-ramp-delay = <1250>; 156 + rohm,dvs-run-voltage = <1000000>; 157 + rohm,dvs-idle-voltage = <900000>; 158 + }; 159 + buck3: BUCK3 { 160 + regulator-name = "buck3"; 161 + regulator-min-microvolt = <700000>; 162 + regulator-max-microvolt = <1300000>; 163 + regulator-boot-on; 164 + rohm,dvs-run-voltage = <1000000>; 165 + }; 166 + buck4: BUCK4 { 167 + regulator-name = "buck4"; 168 + regulator-min-microvolt = <700000>; 169 + regulator-max-microvolt = <1300000>; 170 + regulator-boot-on; 171 + rohm,dvs-run-voltage = <1000000>; 172 + }; 173 + buck5: BUCK5 { 174 + regulator-name = "buck5"; 175 + regulator-min-microvolt = <700000>; 176 + regulator-max-microvolt = <1350000>; 177 + regulator-boot-on; 178 + }; 179 + buck6: BUCK6 { 180 + regulator-name = "buck6"; 181 + regulator-min-microvolt = <3000000>; 182 + regulator-max-microvolt = <3300000>; 183 + regulator-boot-on; 184 + }; 185 + buck7: BUCK7 { 186 + regulator-name = "buck7"; 187 + regulator-min-microvolt = <1605000>; 188 + regulator-max-microvolt = <1995000>; 189 + regulator-boot-on; 190 + }; 191 + buck8: BUCK8 { 192 + regulator-name = "buck8"; 193 + regulator-min-microvolt = <800000>; 194 + regulator-max-microvolt = <1400000>; 195 + }; 196 + 197 + ldo1: LDO1 { 198 + regulator-name = "ldo1"; 199 + regulator-min-microvolt = <3000000>; 200 + regulator-max-microvolt = <3300000>; 201 + regulator-boot-on; 202 + }; 203 + ldo2: LDO2 { 204 + regulator-name = "ldo2"; 205 + regulator-min-microvolt = <900000>; 206 + regulator-max-microvolt = <900000>; 207 + regulator-boot-on; 208 + }; 209 + ldo3: LDO3 { 210 + regulator-name = "ldo3"; 211 + regulator-min-microvolt = <1800000>; 212 + regulator-max-microvolt = <3300000>; 213 + }; 214 + ldo4: LDO4 { 215 + regulator-name = "ldo4"; 216 + regulator-min-microvolt = <900000>; 217 + regulator-max-microvolt = <1800000>; 218 + }; 219 + ldo5: LDO5 { 220 + regulator-name = "ldo5"; 221 + regulator-min-microvolt = <1800000>; 222 + regulator-max-microvolt = <3300000>; 223 + }; 224 + ldo6: LDO6 { 225 + regulator-name = "ldo6"; 226 + regulator-min-microvolt = <900000>; 227 + regulator-max-microvolt = <1800000>; 228 + }; 229 + ldo7_reg: LDO7 { 230 + regulator-name = "ldo7"; 231 + regulator-min-microvolt = <1800000>; 232 + regulator-max-microvolt = <3300000>; 233 + }; 234 + }; 235 + }; 236 + };
+222
Documentation/devicetree/bindings/mfd/rohm,bd71847-pmic.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/mfd/rohm,bd71847-pmic.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: ROHM BD71847 and BD71850 Power Management Integrated Circuit bindings 8 + 9 + maintainers: 10 + - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> 11 + 12 + description: | 13 + BD71847AMWV and BD71850MWV are programmable Power Management ICs for powering 14 + single-core, dual-core, and quad-core SoCs such as NXP-i.MX 8M. It is 15 + optimized for low BOM cost and compact solution footprint. BD71847MWV and 16 + BD71850MWV integrate 6 Buck regulators and 6 LDOs. 17 + Datasheets are available at 18 + https://www.rohm.com/products/power-management/power-management-ic-for-system/industrial-consumer-applications/nxp-imx/bd71847amwv-product 19 + https://www.rohm.com/products/power-management/power-management-ic-for-system/industrial-consumer-applications/nxp-imx/bd71850mwv-product 20 + 21 + properties: 22 + compatible: 23 + enum: 24 + - rohm,bd71847 25 + - rohm,bd71850 26 + 27 + reg: 28 + description: 29 + I2C slave address. 30 + maxItems: 1 31 + 32 + interrupts: 33 + maxItems: 1 34 + 35 + clocks: 36 + maxItems: 1 37 + 38 + "#clock-cells": 39 + const: 0 40 + 41 + # The BD71847 abd BD71850 support two different HW states as reset target 42 + # states. States are called as SNVS and READY. At READY state all the PMIC 43 + # power outputs go down and OTP is reload. At the SNVS state all other logic 44 + # and external devices apart from the SNVS power domain are shut off. Please 45 + # refer to NXP i.MX8 documentation for further information regarding SNVS 46 + # state. When a reset is done via SNVS state the PMIC OTP data is not reload. 47 + # This causes power outputs that have been under SW control to stay down when 48 + # reset has switched power state to SNVS. If reset is done via READY state the 49 + # power outputs will be returned to HW control by OTP loading. Thus the reset 50 + # target state is set to READY by default. If SNVS state is used the boot 51 + # crucial regulators must have the regulator-always-on and regulator-boot-on 52 + # properties set in regulator node. 53 + 54 + rohm,reset-snvs-powered: 55 + description: 56 + Transfer PMIC to SNVS state at reset. 57 + type: boolean 58 + 59 + # Configure the "short press" and "long press" timers for the power button. 60 + # Values are rounded to what hardware supports 61 + # Short-press: 62 + # Shortest being 10ms, next 500ms and then multiple of 500ms up to 7,5s 63 + # Long-press: 64 + # Shortest being 10ms, next 1000ms and then multiple of 1000ms up to 15s 65 + # If these properties are not present the existing # configuration (from 66 + # bootloader or OTP) is not touched. 67 + 68 + rohm,short-press-ms: 69 + description: 70 + Short press duration in milliseconds 71 + enum: 72 + - 10 73 + - 500 74 + - 1000 75 + - 1500 76 + - 2000 77 + - 2500 78 + - 3000 79 + - 3500 80 + - 4000 81 + - 4500 82 + - 5000 83 + - 5500 84 + - 6000 85 + - 6500 86 + - 7000 87 + - 7500 88 + 89 + rohm,long-press-ms: 90 + description: 91 + Long press duration in milliseconds 92 + enum: 93 + - 10 94 + - 1000 95 + - 2000 96 + - 3000 97 + - 4000 98 + - 5000 99 + - 6000 100 + - 7000 101 + - 8000 102 + - 9000 103 + - 10000 104 + - 11000 105 + - 12000 106 + - 13000 107 + - 14000 108 + - 15000 109 + 110 + regulators: 111 + $ref: ../regulator/rohm,bd71847-regulator.yaml 112 + description: 113 + List of child nodes that specify the regulators. 114 + 115 + required: 116 + - compatible 117 + - reg 118 + - interrupts 119 + - clocks 120 + - "#clock-cells" 121 + - regulators 122 + 123 + additionalProperties: false 124 + 125 + examples: 126 + - | 127 + #include <dt-bindings/interrupt-controller/irq.h> 128 + #include <dt-bindings/leds/common.h> 129 + 130 + i2c { 131 + pmic: pmic@4b { 132 + compatible = "rohm,bd71847"; 133 + reg = <0x4b>; 134 + interrupt-parent = <&gpio1>; 135 + interrupts = <29 IRQ_TYPE_LEVEL_LOW>; 136 + #clock-cells = <0>; 137 + clocks = <&osc 0>; 138 + rohm,reset-snvs-powered; 139 + rohm,short-press-ms = <10>; 140 + rohm,long-press-ms = <2000>; 141 + 142 + regulators { 143 + buck1: BUCK1 { 144 + regulator-name = "buck1"; 145 + regulator-min-microvolt = <700000>; 146 + regulator-max-microvolt = <1300000>; 147 + regulator-boot-on; 148 + regulator-always-on; 149 + regulator-ramp-delay = <1250>; 150 + rohm,dvs-run-voltage = <900000>; 151 + rohm,dvs-idle-voltage = <850000>; 152 + rohm,dvs-suspend-voltage = <800000>; 153 + }; 154 + buck2: BUCK2 { 155 + regulator-name = "buck2"; 156 + regulator-min-microvolt = <700000>; 157 + regulator-max-microvolt = <1300000>; 158 + regulator-boot-on; 159 + regulator-always-on; 160 + regulator-ramp-delay = <1250>; 161 + rohm,dvs-run-voltage = <1000000>; 162 + rohm,dvs-idle-voltage = <900000>; 163 + }; 164 + buck3: BUCK3 { 165 + regulator-name = "buck3"; 166 + regulator-min-microvolt = <550000>; 167 + regulator-max-microvolt = <1350000>; 168 + regulator-boot-on; 169 + }; 170 + buck4: BUCK4 { 171 + regulator-name = "buck4"; 172 + regulator-min-microvolt = <2600000>; 173 + regulator-max-microvolt = <3300000>; 174 + regulator-boot-on; 175 + }; 176 + buck5: BUCK5 { 177 + regulator-name = "buck5"; 178 + regulator-min-microvolt = <1605000>; 179 + regulator-max-microvolt = <1995000>; 180 + regulator-boot-on; 181 + }; 182 + buck8: BUCK6 { 183 + regulator-name = "buck6"; 184 + regulator-min-microvolt = <800000>; 185 + regulator-max-microvolt = <1400000>; 186 + }; 187 + 188 + ldo1: LDO1 { 189 + regulator-name = "ldo1"; 190 + regulator-min-microvolt = <1600000>; 191 + regulator-max-microvolt = <3300000>; 192 + regulator-boot-on; 193 + }; 194 + ldo2: LDO2 { 195 + regulator-name = "ldo2"; 196 + regulator-min-microvolt = <800000>; 197 + regulator-max-microvolt = <900000>; 198 + regulator-boot-on; 199 + }; 200 + ldo3: LDO3 { 201 + regulator-name = "ldo3"; 202 + regulator-min-microvolt = <1800000>; 203 + regulator-max-microvolt = <3300000>; 204 + }; 205 + ldo4: LDO4 { 206 + regulator-name = "ldo4"; 207 + regulator-min-microvolt = <900000>; 208 + regulator-max-microvolt = <1800000>; 209 + }; 210 + ldo5: LDO5 { 211 + regulator-name = "ldo5"; 212 + regulator-min-microvolt = <800000>; 213 + regulator-max-microvolt = <3300000>; 214 + }; 215 + ldo6: LDO6 { 216 + regulator-name = "ldo6"; 217 + regulator-min-microvolt = <900000>; 218 + regulator-max-microvolt = <1800000>; 219 + }; 220 + }; 221 + }; 222 + };
-162
Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt
··· 1 - ROHM BD71837 and BD71847 Power Management Integrated Circuit regulator bindings 2 - 3 - Required properties: 4 - - regulator-name: should be "buck1", ..., "buck8" and "ldo1", ..., "ldo7" for 5 - BD71837. For BD71847 names should be "buck1", ..., "buck6" 6 - and "ldo1", ..., "ldo6" 7 - 8 - List of regulators provided by this controller. BD71837 regulators node 9 - should be sub node of the BD71837 MFD node. See BD71837 MFD bindings at 10 - Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt 11 - Regulator nodes should be named to BUCK_<number> and LDO_<number>. The 12 - definition for each of these nodes is defined using the standard 13 - binding for regulators at 14 - Documentation/devicetree/bindings/regulator/regulator.txt. 15 - Note that if BD71837 starts at RUN state you probably want to use 16 - regulator-boot-on at least for BUCK6 and BUCK7 so that those are not 17 - disabled by driver at startup. LDO5 and LDO6 are supplied by those and 18 - if they are disabled at startup the voltage monitoring for LDO5/LDO6 will 19 - cause PMIC to reset. 20 - 21 - The valid names for BD71837 regulator nodes are: 22 - BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, BUCK7, BUCK8 23 - LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7 24 - 25 - The valid names for BD71847 regulator nodes are: 26 - BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6 27 - LDO1, LDO2, LDO3, LDO4, LDO5, LDO6 28 - 29 - Optional properties: 30 - - rohm,dvs-run-voltage : PMIC default "RUN" state voltage in uV. 31 - See below table for bucks which support this. 32 - - rohm,dvs-idle-voltage : PMIC default "IDLE" state voltage in uV. 33 - See below table for bucks which support this. 34 - - rohm,dvs-suspend-voltage : PMIC default "SUSPEND" state voltage in uV. 35 - See below table for bucks which support this. 36 - - Any optional property defined in bindings/regulator/regulator.txt 37 - 38 - Supported default DVS states: 39 - 40 - BD71837: 41 - buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage 42 - ----------------------------------------------------------------------------- 43 - 1 | supported | supported | supported 44 - ---------------------------------------------------------------------------- 45 - 2 | supported | supported | not supported 46 - ---------------------------------------------------------------------------- 47 - 3 | supported | not supported | not supported 48 - ---------------------------------------------------------------------------- 49 - 4 | supported | not supported | not supported 50 - ---------------------------------------------------------------------------- 51 - rest | not supported | not supported | not supported 52 - 53 - BD71847: 54 - buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage 55 - ----------------------------------------------------------------------------- 56 - 1 | supported | supported | supported 57 - ---------------------------------------------------------------------------- 58 - 2 | supported | supported | not supported 59 - ---------------------------------------------------------------------------- 60 - rest | not supported | not supported | not supported 61 - 62 - Example: 63 - regulators { 64 - buck1: BUCK1 { 65 - regulator-name = "buck1"; 66 - regulator-min-microvolt = <700000>; 67 - regulator-max-microvolt = <1300000>; 68 - regulator-boot-on; 69 - regulator-always-on; 70 - regulator-ramp-delay = <1250>; 71 - rohm,dvs-run-voltage = <900000>; 72 - rohm,dvs-idle-voltage = <850000>; 73 - rohm,dvs-suspend-voltage = <800000>; 74 - }; 75 - buck2: BUCK2 { 76 - regulator-name = "buck2"; 77 - regulator-min-microvolt = <700000>; 78 - regulator-max-microvolt = <1300000>; 79 - regulator-boot-on; 80 - regulator-always-on; 81 - regulator-ramp-delay = <1250>; 82 - rohm,dvs-run-voltage = <1000000>; 83 - rohm,dvs-idle-voltage = <900000>; 84 - }; 85 - buck3: BUCK3 { 86 - regulator-name = "buck3"; 87 - regulator-min-microvolt = <700000>; 88 - regulator-max-microvolt = <1300000>; 89 - regulator-boot-on; 90 - rohm,dvs-run-voltage = <1000000>; 91 - }; 92 - buck4: BUCK4 { 93 - regulator-name = "buck4"; 94 - regulator-min-microvolt = <700000>; 95 - regulator-max-microvolt = <1300000>; 96 - regulator-boot-on; 97 - rohm,dvs-run-voltage = <1000000>; 98 - }; 99 - buck5: BUCK5 { 100 - regulator-name = "buck5"; 101 - regulator-min-microvolt = <700000>; 102 - regulator-max-microvolt = <1350000>; 103 - regulator-boot-on; 104 - }; 105 - buck6: BUCK6 { 106 - regulator-name = "buck6"; 107 - regulator-min-microvolt = <3000000>; 108 - regulator-max-microvolt = <3300000>; 109 - regulator-boot-on; 110 - }; 111 - buck7: BUCK7 { 112 - regulator-name = "buck7"; 113 - regulator-min-microvolt = <1605000>; 114 - regulator-max-microvolt = <1995000>; 115 - regulator-boot-on; 116 - }; 117 - buck8: BUCK8 { 118 - regulator-name = "buck8"; 119 - regulator-min-microvolt = <800000>; 120 - regulator-max-microvolt = <1400000>; 121 - }; 122 - 123 - ldo1: LDO1 { 124 - regulator-name = "ldo1"; 125 - regulator-min-microvolt = <3000000>; 126 - regulator-max-microvolt = <3300000>; 127 - regulator-boot-on; 128 - }; 129 - ldo2: LDO2 { 130 - regulator-name = "ldo2"; 131 - regulator-min-microvolt = <900000>; 132 - regulator-max-microvolt = <900000>; 133 - regulator-boot-on; 134 - }; 135 - ldo3: LDO3 { 136 - regulator-name = "ldo3"; 137 - regulator-min-microvolt = <1800000>; 138 - regulator-max-microvolt = <3300000>; 139 - }; 140 - ldo4: LDO4 { 141 - regulator-name = "ldo4"; 142 - regulator-min-microvolt = <900000>; 143 - regulator-max-microvolt = <1800000>; 144 - }; 145 - ldo5: LDO5 { 146 - regulator-name = "ldo5"; 147 - regulator-min-microvolt = <1800000>; 148 - regulator-max-microvolt = <3300000>; 149 - }; 150 - ldo6: LDO6 { 151 - regulator-name = "ldo6"; 152 - regulator-min-microvolt = <900000>; 153 - regulator-max-microvolt = <1800000>; 154 - }; 155 - ldo7_reg: LDO7 { 156 - regulator-name = "ldo7"; 157 - regulator-min-microvolt = <1800000>; 158 - regulator-max-microvolt = <3300000>; 159 - }; 160 - }; 161 - 162 -
+103
Documentation/devicetree/bindings/regulator/rohm,bd71837-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/rohm,bd71837-regulator.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: ROHM BD71837 Power Management Integrated Circuit regulators 8 + 9 + maintainers: 10 + - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> 11 + 12 + description: | 13 + List of regulators provided by this controller. BD71837 regulators node 14 + should be sub node of the BD71837 MFD node. See BD71837 MFD bindings at 15 + Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.yaml 16 + Regulator nodes should be named to BUCK_<number> and LDO_<number>. The 17 + definition for each of these nodes is defined using the standard 18 + binding for regulators at 19 + Documentation/devicetree/bindings/regulator/regulator.txt. 20 + Note that if BD71837 starts at RUN state you probably want to use 21 + regulator-boot-on at least for BUCK6 and BUCK7 so that those are not 22 + disabled by driver at startup. LDO5 and LDO6 are supplied by those and 23 + if they are disabled at startup the voltage monitoring for LDO5/LDO6 will 24 + cause PMIC to reset. 25 + 26 + #The valid names for BD71837 regulator nodes are: 27 + #BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, BUCK7, BUCK8 28 + #LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7 29 + 30 + patternProperties: 31 + "^LDO[1-7]$": 32 + type: object 33 + allOf: 34 + - $ref: regulator.yaml# 35 + description: 36 + Properties for single LDO regulator. 37 + 38 + properties: 39 + regulator-name: 40 + pattern: "^ldo[1-7]$" 41 + description: 42 + should be "ldo1", ..., "ldo7" 43 + 44 + "^BUCK[1-8]$": 45 + type: object 46 + allOf: 47 + - $ref: regulator.yaml# 48 + description: 49 + Properties for single BUCK regulator. 50 + 51 + properties: 52 + regulator-name: 53 + pattern: "^buck[1-8]$" 54 + description: 55 + should be "buck1", ..., "buck8" 56 + 57 + rohm,dvs-run-voltage: 58 + allOf: 59 + - $ref: "/schemas/types.yaml#/definitions/uint32" 60 + - minimum: 0 61 + maximum: 1300000 62 + description: 63 + PMIC default "RUN" state voltage in uV. See below table for 64 + bucks which support this. 0 means disabled. 65 + 66 + rohm,dvs-idle-voltage: 67 + allOf: 68 + - $ref: "/schemas/types.yaml#/definitions/uint32" 69 + - minimum: 0 70 + maximum: 1300000 71 + description: 72 + PMIC default "IDLE" state voltage in uV. See below table for 73 + bucks which support this. 0 means disabled. 74 + 75 + rohm,dvs-suspend-voltage: 76 + allOf: 77 + - $ref: "/schemas/types.yaml#/definitions/uint32" 78 + - minimum: 0 79 + maximum: 1300000 80 + description: 81 + PMIC default "SUSPEND" state voltage in uV. See below table for 82 + bucks which support this. 0 means disabled. 83 + 84 + # Supported default DVS states: 85 + # 86 + # BD71837: 87 + # buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage 88 + # ---------------------------------------------------------------- 89 + # 1 | supported | supported | supported 90 + # ---------------------------------------------------------------- 91 + # 2 | supported | supported | not supported 92 + # ---------------------------------------------------------------- 93 + # 3 | supported | not supported | not supported 94 + # ---------------------------------------------------------------- 95 + # 4 | supported | not supported | not supported 96 + # ---------------------------------------------------------------- 97 + # rest | not supported | not supported | not supported 98 + 99 + 100 + required: 101 + - regulator-name 102 + additionalProperties: false 103 + additionalProperties: false
+97
Documentation/devicetree/bindings/regulator/rohm,bd71847-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/rohm,bd71847-regulator.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: ROHM BD71847 and BD71850 Power Management Integrated Circuit regulators 8 + 9 + maintainers: 10 + - Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> 11 + 12 + description: | 13 + List of regulators provided by this controller. BD71847 regulators node 14 + should be sub node of the BD71847 MFD node. See BD71847 MFD bindings at 15 + Documentation/devicetree/bindings/mfd/rohm,bd71847-pmic.yaml 16 + Regulator nodes should be named to BUCK_<number> and LDO_<number>. The 17 + definition for each of these nodes is defined using the standard 18 + binding for regulators at 19 + Documentation/devicetree/bindings/regulator/regulator.txt. 20 + Note that if BD71847 starts at RUN state you probably want to use 21 + regulator-boot-on at least for BUCK5. LDO6 is supplied by it and it must 22 + not be disabled by driver at startup. If BUCK5 is disabled at startup the 23 + voltage monitoring for LDO5/LDO6 can cause PMIC to reset. 24 + 25 + #The valid names for BD71847 regulator nodes are: 26 + #BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6 27 + #LDO1, LDO2, LDO3, LDO4, LDO5, LDO6 28 + 29 + patternProperties: 30 + "^LDO[1-6]$": 31 + type: object 32 + allOf: 33 + - $ref: regulator.yaml# 34 + description: 35 + Properties for single LDO regulator. 36 + 37 + properties: 38 + regulator-name: 39 + pattern: "^ldo[1-6]$" 40 + description: 41 + should be "ldo1", ..., "ldo6" 42 + 43 + "^BUCK[1-6]$": 44 + type: object 45 + allOf: 46 + - $ref: regulator.yaml# 47 + description: 48 + Properties for single BUCK regulator. 49 + 50 + properties: 51 + regulator-name: 52 + pattern: "^buck[1-6]$" 53 + description: 54 + should be "buck1", ..., "buck6" 55 + 56 + rohm,dvs-run-voltage: 57 + allOf: 58 + - $ref: "/schemas/types.yaml#/definitions/uint32" 59 + - minimum: 0 60 + maximum: 1300000 61 + description: 62 + PMIC default "RUN" state voltage in uV. See below table for 63 + bucks which support this. 0 means disabled. 64 + 65 + rohm,dvs-idle-voltage: 66 + allOf: 67 + - $ref: "/schemas/types.yaml#/definitions/uint32" 68 + - minimum: 0 69 + maximum: 1300000 70 + description: 71 + PMIC default "IDLE" state voltage in uV. See below table for 72 + bucks which support this. 0 means disabled. 73 + 74 + rohm,dvs-suspend-voltage: 75 + allOf: 76 + - $ref: "/schemas/types.yaml#/definitions/uint32" 77 + - minimum: 0 78 + maximum: 1300000 79 + description: 80 + PMIC default "SUSPEND" state voltage in uV. See below table for 81 + bucks which support this. 0 means disabled. 82 + 83 + # Supported default DVS states: 84 + # 85 + # BD71847: 86 + # buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage 87 + # ---------------------------------------------------------------- 88 + # 1 | supported | supported | supported 89 + # ---------------------------------------------------------------- 90 + # 2 | supported | supported | not supported 91 + # ---------------------------------------------------------------- 92 + # rest | not supported | not supported | not supported 93 + 94 + required: 95 + - regulator-name 96 + additionalProperties: false 97 + additionalProperties: false