1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/regulator/rohm,bd71847-regulator.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: ROHM BD71847 and BD71850 Power Management Integrated Circuit regulators 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 108bab661aSEmmanuel Vadot - Matti Vaittinen <mazziesaccount@gmail.com> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: | 13c66ec88fSEmmanuel Vadot List of regulators provided by this controller. BD71847 regulators node 14c66ec88fSEmmanuel Vadot should be sub node of the BD71847 MFD node. See BD71847 MFD bindings at 15c66ec88fSEmmanuel Vadot Documentation/devicetree/bindings/mfd/rohm,bd71847-pmic.yaml 16c66ec88fSEmmanuel Vadot Regulator nodes should be named to BUCK_<number> and LDO_<number>. The 17c66ec88fSEmmanuel Vadot definition for each of these nodes is defined using the standard 18c66ec88fSEmmanuel Vadot binding for regulators at 19c66ec88fSEmmanuel Vadot Documentation/devicetree/bindings/regulator/regulator.txt. 20c66ec88fSEmmanuel Vadot Note that if BD71847 starts at RUN state you probably want to use 21c66ec88fSEmmanuel Vadot regulator-boot-on at least for BUCK5. LDO6 is supplied by it and it must 22c66ec88fSEmmanuel Vadot not be disabled by driver at startup. If BUCK5 is disabled at startup the 23c66ec88fSEmmanuel Vadot voltage monitoring for LDO5/LDO6 can cause PMIC to reset. 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot# The valid names for BD71847 regulator nodes are: 26c66ec88fSEmmanuel Vadot# BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6 27c66ec88fSEmmanuel Vadot# LDO1, LDO2, LDO3, LDO4, LDO5, LDO6 28c66ec88fSEmmanuel Vadot 29c66ec88fSEmmanuel VadotpatternProperties: 30c66ec88fSEmmanuel Vadot "^LDO[1-6]$": 31c66ec88fSEmmanuel Vadot type: object 32c66ec88fSEmmanuel Vadot $ref: regulator.yaml# 33c66ec88fSEmmanuel Vadot description: 34c66ec88fSEmmanuel Vadot Properties for single LDO regulator. 35c66ec88fSEmmanuel Vadot 36c66ec88fSEmmanuel Vadot properties: 37c66ec88fSEmmanuel Vadot regulator-name: 38c66ec88fSEmmanuel Vadot pattern: "^ldo[1-6]$" 39c66ec88fSEmmanuel Vadot description: 40c66ec88fSEmmanuel Vadot should be "ldo1", ..., "ldo6" 41c66ec88fSEmmanuel Vadot 42c66ec88fSEmmanuel Vadot unevaluatedProperties: false 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot "^BUCK[1-6]$": 45c66ec88fSEmmanuel Vadot type: object 46c66ec88fSEmmanuel Vadot $ref: regulator.yaml# 47c66ec88fSEmmanuel Vadot description: 48c66ec88fSEmmanuel Vadot Properties for single BUCK regulator. 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadot properties: 51c66ec88fSEmmanuel Vadot regulator-name: 52c66ec88fSEmmanuel Vadot pattern: "^buck[1-6]$" 53c66ec88fSEmmanuel Vadot description: 54c66ec88fSEmmanuel Vadot should be "buck1", ..., "buck6" 55c66ec88fSEmmanuel Vadot 56c66ec88fSEmmanuel Vadot rohm,dvs-run-voltage: 57*fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 58c66ec88fSEmmanuel Vadot minimum: 0 59c66ec88fSEmmanuel Vadot maximum: 1300000 60c66ec88fSEmmanuel Vadot description: 61c66ec88fSEmmanuel Vadot PMIC default "RUN" state voltage in uV. See below table for 62c66ec88fSEmmanuel Vadot bucks which support this. 0 means disabled. 63c66ec88fSEmmanuel Vadot 64c66ec88fSEmmanuel Vadot rohm,dvs-idle-voltage: 65*fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 66c66ec88fSEmmanuel Vadot minimum: 0 67c66ec88fSEmmanuel Vadot maximum: 1300000 68c66ec88fSEmmanuel Vadot description: 69c66ec88fSEmmanuel Vadot PMIC default "IDLE" state voltage in uV. See below table for 70c66ec88fSEmmanuel Vadot bucks which support this. 0 means disabled. 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot rohm,dvs-suspend-voltage: 73*fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 74c66ec88fSEmmanuel Vadot minimum: 0 75c66ec88fSEmmanuel Vadot maximum: 1300000 76c66ec88fSEmmanuel Vadot description: 77c66ec88fSEmmanuel Vadot PMIC default "SUSPEND" state voltage in uV. See below table for 78c66ec88fSEmmanuel Vadot bucks which support this. 0 means disabled. 79c66ec88fSEmmanuel Vadot 80c66ec88fSEmmanuel Vadot # Supported default DVS states: 81c66ec88fSEmmanuel Vadot # 82c66ec88fSEmmanuel Vadot # BD71847: 83c66ec88fSEmmanuel Vadot # buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage 84c66ec88fSEmmanuel Vadot # ---------------------------------------------------------------- 85c66ec88fSEmmanuel Vadot # 1 | supported | supported | supported 86c66ec88fSEmmanuel Vadot # ---------------------------------------------------------------- 87c66ec88fSEmmanuel Vadot # 2 | supported | supported | not supported 88c66ec88fSEmmanuel Vadot # ---------------------------------------------------------------- 89c66ec88fSEmmanuel Vadot # rest | not supported | not supported | not supported 90c66ec88fSEmmanuel Vadot 916be33864SEmmanuel Vadot # BD718(47/50) power outputs can either be controlled by the PMIC internal 926be33864SEmmanuel Vadot # hardware state machine or by software. If you need regulators to be 936be33864SEmmanuel Vadot # turned ON/OFF for example based on PMIC_STBY_REQ line (which toggles 946be33864SEmmanuel Vadot # PMIC HW state machine) - then you should set this property. 956be33864SEmmanuel Vadot # Tradeoff is that then SW can't control the ON/OFF state for this 966be33864SEmmanuel Vadot # regulator (other than invoking a PMIC state change). 976be33864SEmmanuel Vadot rohm,no-regulator-enable-control: 986be33864SEmmanuel Vadot description: | 996be33864SEmmanuel Vadot Enable/Disable control of this regulator must be left to the 1006be33864SEmmanuel Vadot PMIC hardware state machine. 1016be33864SEmmanuel Vadot type: boolean 1025def4c47SEmmanuel Vadot 1035def4c47SEmmanuel Vadot # Setups where regulator (especially the buck8) output voltage is scaled 1045def4c47SEmmanuel Vadot # by adding external connection where some other regulator output is 1055def4c47SEmmanuel Vadot # connected to feedback-pin (over suitable resistors) is getting popular 1065def4c47SEmmanuel Vadot # amongst users of BD71837. (This allows for example scaling down the 1075def4c47SEmmanuel Vadot # buck8 voltages to suit lover GPU voltages for projects where buck8 is 1085def4c47SEmmanuel Vadot # (ab)used to supply power for GPU. 1095def4c47SEmmanuel Vadot # 1105def4c47SEmmanuel Vadot # So we allow describing this external connection from DT and scale the 1115def4c47SEmmanuel Vadot # voltages accordingly. This is what the connection should look like: 1125def4c47SEmmanuel Vadot # 1135def4c47SEmmanuel Vadot # |---------------| 1145def4c47SEmmanuel Vadot # | buck 8 |-------+----->Vout 1155def4c47SEmmanuel Vadot # | | | 1165def4c47SEmmanuel Vadot # |---------------| | 1175def4c47SEmmanuel Vadot # | | 1185def4c47SEmmanuel Vadot # | | 1195def4c47SEmmanuel Vadot # +-------+--R2----+ 1205def4c47SEmmanuel Vadot # | 1215def4c47SEmmanuel Vadot # R1 1225def4c47SEmmanuel Vadot # | 1235def4c47SEmmanuel Vadot # V FB-pull-up 1245def4c47SEmmanuel Vadot # 1255def4c47SEmmanuel Vadot # Here the buck output is sifted according to formula: 1265def4c47SEmmanuel Vadot # 1275def4c47SEmmanuel Vadot # Vout_o = Vo - (Vpu - Vo)*R2/R1 1285def4c47SEmmanuel Vadot # Linear_step = step_orig*(R1+R2)/R1 1295def4c47SEmmanuel Vadot # 1305def4c47SEmmanuel Vadot # where: 1315def4c47SEmmanuel Vadot # Vout_o is adjusted voltage output at vsel reg value 0 1325def4c47SEmmanuel Vadot # Vo is original voltage output at vsel reg value 0 1335def4c47SEmmanuel Vadot # Vpu is the pull-up voltage V FB-pull-up in the picture 1345def4c47SEmmanuel Vadot # R1 and R2 are resistor values. 1355def4c47SEmmanuel Vadot 1365def4c47SEmmanuel Vadot rohm,fb-pull-up-microvolt: 1375def4c47SEmmanuel Vadot description: 1385def4c47SEmmanuel Vadot Feedback-pin has pull-up connection to adjust voltage range. This is 1395def4c47SEmmanuel Vadot the used pull-up voltage before R1. 1405def4c47SEmmanuel Vadot 1415def4c47SEmmanuel Vadot rohm,feedback-pull-up-r1-ohms: 1425def4c47SEmmanuel Vadot description: 1435def4c47SEmmanuel Vadot Feedback-pin has pull-up connection to adjust voltage range. This is 1445def4c47SEmmanuel Vadot the used R1 resistor. 1455def4c47SEmmanuel Vadot 1465def4c47SEmmanuel Vadot rohm,feedback-pull-up-r2-ohms: 1475def4c47SEmmanuel Vadot description: 1485def4c47SEmmanuel Vadot Feedback-pin has pull-up connection to adjust voltage range. This is 1495def4c47SEmmanuel Vadot the used R2 resistor. 1505def4c47SEmmanuel Vadot 151c66ec88fSEmmanuel Vadot required: 152c66ec88fSEmmanuel Vadot - regulator-name 153c66ec88fSEmmanuel Vadot 154c66ec88fSEmmanuel Vadot unevaluatedProperties: false 155c66ec88fSEmmanuel Vadot 156c66ec88fSEmmanuel VadotadditionalProperties: false 157