101950c46SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 201950c46SEmmanuel Vadot%YAML 1.2 301950c46SEmmanuel Vadot--- 401950c46SEmmanuel Vadot$id: http://devicetree.org/schemas/regulator/microchip,mcp16502.yaml# 501950c46SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 601950c46SEmmanuel Vadot 701950c46SEmmanuel Vadottitle: MCP16502 - High-Performance PMIC 801950c46SEmmanuel Vadot 901950c46SEmmanuel Vadotmaintainers: 1001950c46SEmmanuel Vadot - Andrei Simion <andrei.simion@microchip.com> 1101950c46SEmmanuel Vadot 1201950c46SEmmanuel Vadotdescription: 1301950c46SEmmanuel Vadot The MCP16502 is an optimally integrated PMIC compatible 1401950c46SEmmanuel Vadot with Microchip's eMPUs(Embedded Microprocessor Units), 1501950c46SEmmanuel Vadot requiring Dynamic Voltage Scaling (DVS) with the use 1601950c46SEmmanuel Vadot of High-Performance mode (HPM). 1701950c46SEmmanuel Vadot 1801950c46SEmmanuel Vadotproperties: 1901950c46SEmmanuel Vadot compatible: 2001950c46SEmmanuel Vadot const: microchip,mcp16502 2101950c46SEmmanuel Vadot 2201950c46SEmmanuel Vadot lpm-gpios: 2301950c46SEmmanuel Vadot maxItems: 1 2401950c46SEmmanuel Vadot description: GPIO for LPM pin. 2501950c46SEmmanuel Vadot Note that this GPIO must remain high during 2601950c46SEmmanuel Vadot suspend-to-ram, keeping the PMIC into HIBERNATE mode. 2701950c46SEmmanuel Vadot 2801950c46SEmmanuel Vadot reg: 2901950c46SEmmanuel Vadot maxItems: 1 3001950c46SEmmanuel Vadot 31*b2d2a78aSEmmanuel Vadot lvin-supply: 32*b2d2a78aSEmmanuel Vadot description: Input supply phandle for LDO1 and LDO2 33*b2d2a78aSEmmanuel Vadot 34*b2d2a78aSEmmanuel Vadot pvin1-supply: 35*b2d2a78aSEmmanuel Vadot description: Input supply phandle for VDD_IO (BUCK1) 36*b2d2a78aSEmmanuel Vadot 37*b2d2a78aSEmmanuel Vadot pvin2-supply: 38*b2d2a78aSEmmanuel Vadot description: Input supply phandle for VDD_DDR (BUCK2) 39*b2d2a78aSEmmanuel Vadot 40*b2d2a78aSEmmanuel Vadot pvin3-supply: 41*b2d2a78aSEmmanuel Vadot description: Input supply phandle for VDD_CORE (BUCK3) 42*b2d2a78aSEmmanuel Vadot 43*b2d2a78aSEmmanuel Vadot pvin4-supply: 44*b2d2a78aSEmmanuel Vadot description: Input supply phandle for VDD_OTHER (BUCK4) 45*b2d2a78aSEmmanuel Vadot 4601950c46SEmmanuel Vadot regulators: 4701950c46SEmmanuel Vadot type: object 4801950c46SEmmanuel Vadot additionalProperties: false 4901950c46SEmmanuel Vadot description: List of regulators and its properties. 5001950c46SEmmanuel Vadot 5101950c46SEmmanuel Vadot patternProperties: 5201950c46SEmmanuel Vadot "^(VDD_(IO|CORE|DDR|OTHER)|LDO[1-2])$": 5301950c46SEmmanuel Vadot type: object 5401950c46SEmmanuel Vadot $ref: regulator.yaml# 5501950c46SEmmanuel Vadot unevaluatedProperties: false 5601950c46SEmmanuel Vadot 5701950c46SEmmanuel Vadot properties: 5801950c46SEmmanuel Vadot regulator-initial-mode: 5901950c46SEmmanuel Vadot enum: [2, 4] 6001950c46SEmmanuel Vadot default: 2 6101950c46SEmmanuel Vadot description: Initial operating mode 6201950c46SEmmanuel Vadot 6301950c46SEmmanuel Vadot regulator-allowed-modes: 6401950c46SEmmanuel Vadot items: 6501950c46SEmmanuel Vadot enum: [2, 4] 6601950c46SEmmanuel Vadot description: Supported modes 6701950c46SEmmanuel Vadot 2 - FPWM higher precision, higher consumption 6801950c46SEmmanuel Vadot 4 - AutoPFM lower precision, lower consumption 6901950c46SEmmanuel Vadot 7001950c46SEmmanuel Vadotrequired: 7101950c46SEmmanuel Vadot - compatible 7201950c46SEmmanuel Vadot - reg 7301950c46SEmmanuel Vadot - regulators 7401950c46SEmmanuel Vadot 7501950c46SEmmanuel VadotadditionalProperties: false 7601950c46SEmmanuel Vadot 7701950c46SEmmanuel Vadotexamples: 7801950c46SEmmanuel Vadot - | 7901950c46SEmmanuel Vadot i2c { 8001950c46SEmmanuel Vadot #address-cells = <1>; 8101950c46SEmmanuel Vadot #size-cells = <0>; 8201950c46SEmmanuel Vadot 8301950c46SEmmanuel Vadot pmic@5b { 8401950c46SEmmanuel Vadot compatible = "microchip,mcp16502"; 8501950c46SEmmanuel Vadot reg = <0x5b>; 86*b2d2a78aSEmmanuel Vadot lvin-supply = <®_5v>; 87*b2d2a78aSEmmanuel Vadot pvin1-supply = <®_5v>; 88*b2d2a78aSEmmanuel Vadot pvin2-supply = <®_5v>; 89*b2d2a78aSEmmanuel Vadot pvin3-supply = <®_5v>; 90*b2d2a78aSEmmanuel Vadot pvin4-supply = <®_5v>; 9101950c46SEmmanuel Vadot 9201950c46SEmmanuel Vadot regulators { 9301950c46SEmmanuel Vadot VDD_IO { 9401950c46SEmmanuel Vadot regulator-name = "VDD_IO"; 9501950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 9601950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 9701950c46SEmmanuel Vadot regulator-initial-mode = <2>; 9801950c46SEmmanuel Vadot regulator-allowed-modes = <2>, <4>; 9901950c46SEmmanuel Vadot regulator-always-on; 10001950c46SEmmanuel Vadot 10101950c46SEmmanuel Vadot regulator-state-standby { 10201950c46SEmmanuel Vadot regulator-on-in-suspend; 10301950c46SEmmanuel Vadot regulator-mode = <4>; 10401950c46SEmmanuel Vadot }; 10501950c46SEmmanuel Vadot 10601950c46SEmmanuel Vadot regulator-state-mem { 10701950c46SEmmanuel Vadot regulator-off-in-suspend; 10801950c46SEmmanuel Vadot regulator-mode = <4>; 10901950c46SEmmanuel Vadot }; 11001950c46SEmmanuel Vadot }; 11101950c46SEmmanuel Vadot 11201950c46SEmmanuel Vadot VDD_DDR { 11301950c46SEmmanuel Vadot regulator-name = "VDD_DDR"; 11401950c46SEmmanuel Vadot regulator-min-microvolt = <1350000>; 11501950c46SEmmanuel Vadot regulator-max-microvolt = <1350000>; 11601950c46SEmmanuel Vadot regulator-initial-mode = <2>; 11701950c46SEmmanuel Vadot regulator-allowed-modes = <2>, <4>; 11801950c46SEmmanuel Vadot regulator-always-on; 11901950c46SEmmanuel Vadot 12001950c46SEmmanuel Vadot regulator-state-standby { 12101950c46SEmmanuel Vadot regulator-on-in-suspend; 12201950c46SEmmanuel Vadot regulator-mode = <4>; 12301950c46SEmmanuel Vadot }; 12401950c46SEmmanuel Vadot 12501950c46SEmmanuel Vadot regulator-state-mem { 12601950c46SEmmanuel Vadot regulator-on-in-suspend; 12701950c46SEmmanuel Vadot regulator-mode = <4>; 12801950c46SEmmanuel Vadot }; 12901950c46SEmmanuel Vadot }; 13001950c46SEmmanuel Vadot 13101950c46SEmmanuel Vadot VDD_CORE { 13201950c46SEmmanuel Vadot regulator-name = "VDD_CORE"; 13301950c46SEmmanuel Vadot regulator-min-microvolt = <1150000>; 13401950c46SEmmanuel Vadot regulator-max-microvolt = <1150000>; 13501950c46SEmmanuel Vadot regulator-initial-mode = <2>; 13601950c46SEmmanuel Vadot regulator-allowed-modes = <2>, <4>; 13701950c46SEmmanuel Vadot regulator-always-on; 13801950c46SEmmanuel Vadot 13901950c46SEmmanuel Vadot regulator-state-standby { 14001950c46SEmmanuel Vadot regulator-on-in-suspend; 14101950c46SEmmanuel Vadot regulator-mode = <4>; 14201950c46SEmmanuel Vadot }; 14301950c46SEmmanuel Vadot 14401950c46SEmmanuel Vadot regulator-state-mem { 14501950c46SEmmanuel Vadot regulator-off-in-suspend; 14601950c46SEmmanuel Vadot regulator-mode = <4>; 14701950c46SEmmanuel Vadot }; 14801950c46SEmmanuel Vadot }; 14901950c46SEmmanuel Vadot 15001950c46SEmmanuel Vadot VDD_OTHER { 15101950c46SEmmanuel Vadot regulator-name = "VDD_OTHER"; 15201950c46SEmmanuel Vadot regulator-min-microvolt = <1050000>; 15301950c46SEmmanuel Vadot regulator-max-microvolt = <1250000>; 15401950c46SEmmanuel Vadot regulator-initial-mode = <2>; 15501950c46SEmmanuel Vadot regulator-allowed-modes = <2>, <4>; 15601950c46SEmmanuel Vadot regulator-always-on; 15701950c46SEmmanuel Vadot 15801950c46SEmmanuel Vadot regulator-state-standby { 15901950c46SEmmanuel Vadot regulator-on-in-suspend; 16001950c46SEmmanuel Vadot regulator-mode = <4>; 16101950c46SEmmanuel Vadot }; 16201950c46SEmmanuel Vadot 16301950c46SEmmanuel Vadot regulator-state-mem { 16401950c46SEmmanuel Vadot regulator-off-in-suspend; 16501950c46SEmmanuel Vadot regulator-mode = <4>; 16601950c46SEmmanuel Vadot }; 16701950c46SEmmanuel Vadot }; 16801950c46SEmmanuel Vadot 16901950c46SEmmanuel Vadot LDO1 { 17001950c46SEmmanuel Vadot regulator-name = "LDO1"; 17101950c46SEmmanuel Vadot regulator-min-microvolt = <1800000>; 17201950c46SEmmanuel Vadot regulator-max-microvolt = <1800000>; 17301950c46SEmmanuel Vadot regulator-always-on; 17401950c46SEmmanuel Vadot 17501950c46SEmmanuel Vadot regulator-state-standby { 17601950c46SEmmanuel Vadot regulator-on-in-suspend; 17701950c46SEmmanuel Vadot }; 17801950c46SEmmanuel Vadot 17901950c46SEmmanuel Vadot regulator-state-mem { 18001950c46SEmmanuel Vadot regulator-off-in-suspend; 18101950c46SEmmanuel Vadot }; 18201950c46SEmmanuel Vadot }; 18301950c46SEmmanuel Vadot 18401950c46SEmmanuel Vadot LDO2 { 18501950c46SEmmanuel Vadot regulator-name = "LDO2"; 18601950c46SEmmanuel Vadot regulator-min-microvolt = <1200000>; 18701950c46SEmmanuel Vadot regulator-max-microvolt = <3700000>; 18801950c46SEmmanuel Vadot regulator-always-on; 18901950c46SEmmanuel Vadot 19001950c46SEmmanuel Vadot regulator-state-standby { 19101950c46SEmmanuel Vadot regulator-on-in-suspend; 19201950c46SEmmanuel Vadot }; 19301950c46SEmmanuel Vadot 19401950c46SEmmanuel Vadot regulator-state-mem { 19501950c46SEmmanuel Vadot regulator-off-in-suspend; 19601950c46SEmmanuel Vadot }; 19701950c46SEmmanuel Vadot }; 19801950c46SEmmanuel Vadot }; 19901950c46SEmmanuel Vadot }; 20001950c46SEmmanuel Vadot }; 201