~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/mfd/samsung,s5m8767.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  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,s5m8767.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Samsung S5M8767 Power Management IC
  8 
  9 maintainers:
 10   - Krzysztof Kozlowski <krzk@kernel.org>
 11 
 12 description: |
 13   This is a part of device tree bindings for S2M and S5M family of Power
 14   Management IC (PMIC).
 15 
 16   The Samsung S5M8767 is a Power Management IC which includes voltage
 17   and current regulators, RTC, clock outputs and other sub-blocks.
 18 
 19 properties:
 20   compatible:
 21     const: samsung,s5m8767-pmic
 22 
 23   clocks:
 24     $ref: /schemas/clock/samsung,s2mps11.yaml
 25     description:
 26       Child node describing clock provider.
 27 
 28   interrupts:
 29     maxItems: 1
 30 
 31   reg:
 32     maxItems: 1
 33 
 34   regulators:
 35     $ref: /schemas/regulator/samsung,s5m8767.yaml
 36     description:
 37       List of child nodes that specify the regulators.
 38 
 39   s5m8767,pmic-buck2-dvs-voltage:
 40     $ref: /schemas/types.yaml#/definitions/uint32-array
 41     minItems: 8
 42     maxItems: 8
 43     description: |
 44       A set of 8 voltage values in micro-volt (uV) units for buck2 when
 45       changing voltage using gpio dvs.
 46 
 47   s5m8767,pmic-buck3-dvs-voltage:
 48     $ref: /schemas/types.yaml#/definitions/uint32-array
 49     minItems: 8
 50     maxItems: 8
 51     description: |
 52       A set of 8 voltage values in micro-volt (uV) units for buck3 when
 53       changing voltage using gpio dvs.
 54 
 55   s5m8767,pmic-buck4-dvs-voltage:
 56     $ref: /schemas/types.yaml#/definitions/uint32-array
 57     minItems: 8
 58     maxItems: 8
 59     description: |
 60       A set of 8 voltage values in micro-volt (uV) units for buck4 when
 61       changing voltage using gpio dvs.
 62 
 63   s5m8767,pmic-buck-ds-gpios:
 64     minItems: 3
 65     maxItems: 3
 66     description: |
 67       GPIO specifiers for three host gpio's used for selecting GPIO DVS lines.
 68       It is one-to-one mapped to dvs gpio lines.
 69 
 70   s5m8767,pmic-buck2-uses-gpio-dvs:
 71     type: boolean
 72     description: buck2 can be controlled by gpio dvs.
 73 
 74   s5m8767,pmic-buck3-uses-gpio-dvs:
 75     type: boolean
 76     description: buck3 can be controlled by gpio dvs.
 77 
 78   s5m8767,pmic-buck4-uses-gpio-dvs:
 79     type: boolean
 80     description: buck4 can be controlled by gpio dvs.
 81 
 82   s5m8767,pmic-buck-default-dvs-idx:
 83     $ref: /schemas/types.yaml#/definitions/uint32-array
 84     minimum: 0
 85     maximum: 7
 86     default: 0
 87     description: |
 88       Default voltage setting selected from the possible 8 options selectable
 89       by the dvs gpios. The value of this property should be between 0 and 7.
 90       If not specified or if out of range, the default value of this property
 91       is set to 0.
 92 
 93   s5m8767,pmic-buck-dvs-gpios:
 94     minItems: 3
 95     maxItems: 3
 96     description: |
 97       GPIO specifiers for three host gpio's used for dvs.
 98 
 99   vinb1-supply:
100     description: Power supply for buck1
101   vinb2-supply:
102     description: Power supply for buck2
103   vinb3-supply:
104     description: Power supply for buck3
105   vinb4-supply:
106     description: Power supply for buck4
107   vinb5-supply:
108     description: Power supply for buck5
109   vinb6-supply:
110     description: Power supply for buck6
111   vinb7-supply:
112     description: Power supply for buck7
113   vinb8-supply:
114     description: Power supply for buck8
115   vinb9-supply:
116     description: Power supply for buck9
117 
118   vinl1-supply:
119     description: Power supply for LDO3, LDO10, LDO26, LDO27
120   vinl2-supply:
121     description: Power supply for LDO13, LDO16, LDO25, LDO28
122   vinl3-supply:
123     description: Power supply for LDO11, LDO14
124   vinl4-supply:
125     description: Power supply for LDO4, LDO9
126   vinl5-supply:
127     description: Power supply for LDO12, LDO17, LDO19, LDO23
128   vinl6-supply:
129     description: Power supply for LDO18, LDO20, LDO21, LDO24
130   vinl7-supply:
131     description: Power supply for LDO5, LDO22
132   vinl8-supply:
133     description: Power supply for LDO1, LDO6, LDO7, LDO8, LDO15
134   vinl9-supply:
135     description: Power supply for LDO2
136 
137   wakeup-source: true
138 
139 required:
140   - compatible
141   - reg
142   - regulators
143   - s5m8767,pmic-buck-ds-gpios
144 
145 dependencies:
146   s5m8767,pmic-buck2-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
147   s5m8767,pmic-buck3-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
148   s5m8767,pmic-buck4-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
149   s5m8767,pmic-buck2-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck2-dvs-voltage' ]
150   s5m8767,pmic-buck3-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck3-dvs-voltage' ]
151   s5m8767,pmic-buck4-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck4-dvs-voltage' ]
152 
153 additionalProperties: false
154 
155 allOf:
156   - not:
157       required:
158         - s5m8767,pmic-buck2-uses-gpio-dvs
159         - s5m8767,pmic-buck3-uses-gpio-dvs
160   - not:
161       required:
162         - s5m8767,pmic-buck2-uses-gpio-dvs
163         - s5m8767,pmic-buck4-uses-gpio-dvs
164   - not:
165       required:
166         - s5m8767,pmic-buck3-uses-gpio-dvs
167         - s5m8767,pmic-buck4-uses-gpio-dvs
168 
169 examples:
170   - |
171     #include <dt-bindings/gpio/gpio.h>
172     #include <dt-bindings/interrupt-controller/irq.h>
173 
174     i2c {
175         #address-cells = <1>;
176         #size-cells = <0>;
177 
178         pmic@66 {
179             compatible = "samsung,s5m8767-pmic";
180             reg = <0x66>;
181 
182             interrupt-parent = <&gpx3>;
183             interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
184             pinctrl-names = "default";
185             pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
186             wakeup-source;
187 
188             s5m8767,pmic-buck-default-dvs-idx = <3>;
189             s5m8767,pmic-buck2-uses-gpio-dvs;
190 
191             s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>,
192                                           <&gpd1 1 GPIO_ACTIVE_LOW>,
193                                           <&gpd1 2 GPIO_ACTIVE_LOW>;
194 
195             s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>,
196                                          <&gpx2 4 GPIO_ACTIVE_LOW>,
197                                          <&gpx2 5 GPIO_ACTIVE_LOW>;
198 
199             s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>,
200                                              <1250000>, <1200000>,
201                                              <1150000>, <1100000>,
202                                              <1000000>, <950000>;
203 
204             s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
205                                              <1100000>, <1100000>,
206                                              <1000000>, <1000000>,
207                                              <1000000>, <1000000>;
208 
209             s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
210                                              <1200000>, <1200000>,
211                                              <1200000>, <1200000>,
212                                              <1200000>, <1200000>;
213 
214             clocks {
215                 compatible = "samsung,s5m8767-clk";
216                 #clock-cells = <1>;
217                 clock-output-names = "en32khz_ap", "en32khz_cp", "en32khz_bt";
218             };
219 
220             regulators {
221                 LDO1 {
222                     regulator-name = "VDD_ALIVE";
223                     regulator-min-microvolt = <1100000>;
224                     regulator-max-microvolt = <1100000>;
225                     regulator-always-on;
226                     regulator-boot-on;
227                     op_mode = <1>; /* Normal Mode */
228                 };
229 
230                 // ...
231 
232                 BUCK1 {
233                     regulator-name = "VDD_MIF";
234                     regulator-min-microvolt = <950000>;
235                     regulator-max-microvolt = <1100000>;
236                     regulator-always-on;
237                     regulator-boot-on;
238                     op_mode = <1>; /* Normal Mode */
239                 };
240 
241                 BUCK2 {
242                     regulator-name = "VDD_ARM";
243                     regulator-min-microvolt = <900000>;
244                     regulator-max-microvolt = <1350000>;
245                     regulator-always-on;
246                     regulator-boot-on;
247                     op_mode = <1>; /* Normal Mode */
248                 };
249 
250                 // ...
251             };
252         };
253     };
254 
255   - |
256     #include <dt-bindings/gpio/gpio.h>
257     #include <dt-bindings/interrupt-controller/irq.h>
258 
259     i2c {
260         #address-cells = <1>;
261         #size-cells = <0>;
262 
263         pmic@66 {
264             compatible = "samsung,s5m8767-pmic";
265             reg = <0x66>;
266 
267             interrupt-parent = <&gpx3>;
268             interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
269             pinctrl-names = "default";
270             pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
271             wakeup-source;
272 
273             s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>,
274                                          <&gpx2 4 GPIO_ACTIVE_LOW>,
275                                          <&gpx2 5 GPIO_ACTIVE_LOW>;
276 
277             clocks {
278                 compatible = "samsung,s5m8767-clk";
279                 #clock-cells = <1>;
280                 clock-output-names = "en32khz_ap", "en32khz_cp", "en32khz_bt";
281             };
282 
283             regulators {
284                 LDO1 {
285                     regulator-name = "VDD_ALIVE";
286                     regulator-min-microvolt = <1100000>;
287                     regulator-max-microvolt = <1100000>;
288                     regulator-always-on;
289                     regulator-boot-on;
290                     op_mode = <1>; /* Normal Mode */
291                 };
292 
293                 // ...
294             };
295         };
296     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php