1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mfd/samsung,s2mpg10-pmic.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Samsung S2MPG10 Power Management IC 8 9maintainers: 10 - André Draszik <andre.draszik@linaro.org> 11 12description: | 13 This is part of the device tree bindings for the S2MPG10 Power Management IC 14 (PMIC). 15 16 The Samsung S2MPG10 is a Power Management IC for mobile applications with buck 17 converters, various LDOs, power meters, RTC, clock outputs, and additional 18 GPIO interfaces and is typically complemented by S2MPG10 PMIC in a main/sub 19 configuration as the main PMIC. 20 21properties: 22 compatible: 23 const: samsung,s2mpg10-pmic 24 25 clocks: 26 $ref: /schemas/clock/samsung,s2mps11.yaml 27 description: 28 Child node describing clock provider. 29 30 interrupts: 31 maxItems: 1 32 33 regulators: 34 type: object 35 $ref: /schemas/regulator/samsung,s2mpg10-regulator.yaml 36 description: 37 List of child nodes that specify the regulators. 38 39 system-power-controller: true 40 41 wakeup-source: true 42 43patternProperties: 44 "^vinb([1-9]|10)m-supply$": 45 description: 46 Phandle to the power supply for each buck rail of this PMIC. There is a 47 1:1 mapping of supply to rail, e.g. vinb1m-supply supplies buck1m. 48 49 "^vinl([1-9]|1[0-5])m-supply$": 50 description: | 51 Phandle to the power supply for one or multiple LDO rails of this PMIC. 52 The mapping of supply to rail(s) is as follows: 53 vinl1m - ldo13m 54 vinl2m - ldo15m 55 vinl3m - ldo1m, ldo5m, ldo7m 56 vinl4m - ldo3m, ldo8m 57 vinl5m - ldo16m 58 vinl6m - ldo17m 59 vinl7m - ldo6m, ldo11m, ldo24m, ldo28m 60 vinl8m - ldo12m 61 vinl9m - ldo2m, ldo4m 62 vinl10m - ldo9m, ldo14m, ldo18m, 19m, ldo20m, ldo25m 63 vinl11m - ldo23m, ldo31m 64 vinl12m - ldo29m 65 vinl13m - ldo30m 66 vinl14m - ldo21m 67 vinl15m - ldo10m, ldo22m, ldo26m, ldo27m 68 69required: 70 - compatible 71 - interrupts 72 - regulators 73 74additionalProperties: false 75 76examples: 77 - | 78 #include <dt-bindings/gpio/gpio.h> 79 #include <dt-bindings/interrupt-controller/irq.h> 80 #include <dt-bindings/regulator/samsung,s2mpg10-regulator.h> 81 82 pmic { 83 compatible = "samsung,s2mpg10-pmic"; 84 interrupts-extended = <&gpa0 6 IRQ_TYPE_LEVEL_LOW>; 85 pinctrl-names = "default"; 86 pinctrl-0 = <&pmic_int>; 87 system-power-controller; 88 wakeup-source; 89 90 vinl3m-supply = <&buck8m>; 91 92 clocks { 93 compatible = "samsung,s2mpg10-clk"; 94 #clock-cells = <1>; 95 clock-output-names = "rtc32k_ap", "peri32k1", "peri32k2"; 96 }; 97 98 regulators { 99 buck8m { 100 regulator-name = "vdd_mif"; 101 regulator-min-microvolt = <450000>; 102 regulator-max-microvolt = <1300000>; 103 regulator-ramp-delay = <6250>; 104 }; 105 106 ldo1m { 107 regulator-name = "vdd_ldo1"; 108 regulator-min-microvolt = <700000>; 109 regulator-max-microvolt = <1300000>; 110 }; 111 112 ldo20m { 113 regulator-name = "vdd_dmics"; 114 regulator-min-microvolt = <700000>; 115 regulator-max-microvolt = <1300000>; 116 regulator-always-on; 117 samsung,ext-control = <S2MPG10_EXTCTRL_LDO20M_EN2>; 118 }; 119 }; 120 }; 121