xref: /linux/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml (revision 06d07429858317ded2db7986113a9e0129cd599b)
196c8bddbSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0
296c8bddbSKrzysztof Kozlowski%YAML 1.2
396c8bddbSKrzysztof Kozlowski---
496c8bddbSKrzysztof Kozlowski$id: http://devicetree.org/schemas/soc/samsung/exynos-pmu.yaml#
596c8bddbSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
696c8bddbSKrzysztof Kozlowski
796c8bddbSKrzysztof Kozlowskititle: Samsung Exynos SoC series Power Management Unit (PMU)
896c8bddbSKrzysztof Kozlowski
996c8bddbSKrzysztof Kozlowskimaintainers:
1096c8bddbSKrzysztof Kozlowski  - Krzysztof Kozlowski <krzk@kernel.org>
1196c8bddbSKrzysztof Kozlowski
1296c8bddbSKrzysztof Kozlowski# Custom select to avoid matching all nodes with 'syscon'
1396c8bddbSKrzysztof Kozlowskiselect:
1496c8bddbSKrzysztof Kozlowski  properties:
1596c8bddbSKrzysztof Kozlowski    compatible:
1696c8bddbSKrzysztof Kozlowski      contains:
1796c8bddbSKrzysztof Kozlowski        enum:
18*fdd78ff0SPeter Griffin          - google,gs101-pmu
1996c8bddbSKrzysztof Kozlowski          - samsung,exynos3250-pmu
2096c8bddbSKrzysztof Kozlowski          - samsung,exynos4210-pmu
218a19d4a1SArtur Weber          - samsung,exynos4212-pmu
2296c8bddbSKrzysztof Kozlowski          - samsung,exynos4412-pmu
2396c8bddbSKrzysztof Kozlowski          - samsung,exynos5250-pmu
2496c8bddbSKrzysztof Kozlowski          - samsung,exynos5260-pmu
2596c8bddbSKrzysztof Kozlowski          - samsung,exynos5410-pmu
2696c8bddbSKrzysztof Kozlowski          - samsung,exynos5420-pmu
2796c8bddbSKrzysztof Kozlowski          - samsung,exynos5433-pmu
2896c8bddbSKrzysztof Kozlowski          - samsung,exynos7-pmu
2996c8bddbSKrzysztof Kozlowski          - samsung,exynos850-pmu
3096c8bddbSKrzysztof Kozlowski          - samsung-s5pv210-pmu
3196c8bddbSKrzysztof Kozlowski  required:
3296c8bddbSKrzysztof Kozlowski    - compatible
3396c8bddbSKrzysztof Kozlowski
3496c8bddbSKrzysztof Kozlowskiproperties:
3596c8bddbSKrzysztof Kozlowski  compatible:
36fe6a952bSKrzysztof Kozlowski    oneOf:
37fe6a952bSKrzysztof Kozlowski      - items:
3896c8bddbSKrzysztof Kozlowski          - enum:
39*fdd78ff0SPeter Griffin              - google,gs101-pmu
4096c8bddbSKrzysztof Kozlowski              - samsung,exynos3250-pmu
4196c8bddbSKrzysztof Kozlowski              - samsung,exynos4210-pmu
428a19d4a1SArtur Weber              - samsung,exynos4212-pmu
4396c8bddbSKrzysztof Kozlowski              - samsung,exynos4412-pmu
4496c8bddbSKrzysztof Kozlowski              - samsung,exynos5250-pmu
4596c8bddbSKrzysztof Kozlowski              - samsung,exynos5260-pmu
4696c8bddbSKrzysztof Kozlowski              - samsung,exynos5410-pmu
4796c8bddbSKrzysztof Kozlowski              - samsung,exynos5420-pmu
4896c8bddbSKrzysztof Kozlowski              - samsung,exynos5433-pmu
4996c8bddbSKrzysztof Kozlowski              - samsung,exynos7-pmu
5096c8bddbSKrzysztof Kozlowski              - samsung,exynos850-pmu
5196c8bddbSKrzysztof Kozlowski              - samsung-s5pv210-pmu
5296c8bddbSKrzysztof Kozlowski          - const: syscon
53fe6a952bSKrzysztof Kozlowski      - items:
54fe6a952bSKrzysztof Kozlowski          - enum:
5525737c24SKrzysztof Kozlowski              - samsung,exynos7885-pmu
5625737c24SKrzysztof Kozlowski              - samsung,exynosautov9-pmu
5770567228SJaewon Kim              - samsung,exynosautov920-pmu
5854772f1dSKrzysztof Kozlowski              - tesla,fsd-pmu
5925737c24SKrzysztof Kozlowski          - const: samsung,exynos7-pmu
6025737c24SKrzysztof Kozlowski          - const: syscon
6125737c24SKrzysztof Kozlowski      - items:
6225737c24SKrzysztof Kozlowski          - enum:
63e154a338SKrzysztof Kozlowski              - samsung,exynos3250-pmu
64e154a338SKrzysztof Kozlowski              - samsung,exynos4210-pmu
658a19d4a1SArtur Weber              - samsung,exynos4212-pmu
66e154a338SKrzysztof Kozlowski              - samsung,exynos4412-pmu
67fe6a952bSKrzysztof Kozlowski              - samsung,exynos5250-pmu
68fe6a952bSKrzysztof Kozlowski              - samsung,exynos5420-pmu
69fe6a952bSKrzysztof Kozlowski              - samsung,exynos5433-pmu
70fe6a952bSKrzysztof Kozlowski          - const: simple-mfd
71fe6a952bSKrzysztof Kozlowski          - const: syscon
7296c8bddbSKrzysztof Kozlowski
7396c8bddbSKrzysztof Kozlowski  reg:
7496c8bddbSKrzysztof Kozlowski    maxItems: 1
7596c8bddbSKrzysztof Kozlowski
7696c8bddbSKrzysztof Kozlowski  '#clock-cells':
7796c8bddbSKrzysztof Kozlowski    const: 1
7896c8bddbSKrzysztof Kozlowski
7996c8bddbSKrzysztof Kozlowski  clock-names:
8096c8bddbSKrzysztof Kozlowski    description:
8196c8bddbSKrzysztof Kozlowski      List of clock names for particular CLKOUT mux inputs
8296c8bddbSKrzysztof Kozlowski    minItems: 1
8396c8bddbSKrzysztof Kozlowski    maxItems: 32
8496c8bddbSKrzysztof Kozlowski    items:
8596c8bddbSKrzysztof Kozlowski      pattern: '^clkout([0-9]|[12][0-9]|3[0-1])$'
8696c8bddbSKrzysztof Kozlowski
8796c8bddbSKrzysztof Kozlowski  clocks:
8896c8bddbSKrzysztof Kozlowski    minItems: 1
8996c8bddbSKrzysztof Kozlowski    maxItems: 32
9096c8bddbSKrzysztof Kozlowski
91fe6a952bSKrzysztof Kozlowski  dp-phy:
92fe6a952bSKrzysztof Kozlowski    $ref: /schemas/phy/samsung,dp-video-phy.yaml
93fe6a952bSKrzysztof Kozlowski    unevaluatedProperties: false
94fe6a952bSKrzysztof Kozlowski
9596c8bddbSKrzysztof Kozlowski  interrupt-controller:
9696c8bddbSKrzysztof Kozlowski    description:
9796c8bddbSKrzysztof Kozlowski      Some PMUs are capable of behaving as an interrupt controller (mostly
9896c8bddbSKrzysztof Kozlowski      to wake up a suspended PMU).
9996c8bddbSKrzysztof Kozlowski
10096c8bddbSKrzysztof Kozlowski  '#interrupt-cells':
10196c8bddbSKrzysztof Kozlowski    description:
10296c8bddbSKrzysztof Kozlowski      Must be identical to the that of the parent interrupt controller.
10396c8bddbSKrzysztof Kozlowski    const: 3
10496c8bddbSKrzysztof Kozlowski
105fe6a952bSKrzysztof Kozlowski  mipi-phy:
106fe6a952bSKrzysztof Kozlowski    $ref: /schemas/phy/samsung,mipi-video-phy.yaml
107fe6a952bSKrzysztof Kozlowski    unevaluatedProperties: false
108fe6a952bSKrzysztof Kozlowski
1093e27bf71SKrzysztof Kozlowski  reboot-mode:
1103e27bf71SKrzysztof Kozlowski    $ref: /schemas/power/reset/syscon-reboot-mode.yaml
1113e27bf71SKrzysztof Kozlowski    type: object
1123e27bf71SKrzysztof Kozlowski    description:
1133e27bf71SKrzysztof Kozlowski      Reboot mode to alter bootloader behavior for the next boot
1143e27bf71SKrzysztof Kozlowski
11596c8bddbSKrzysztof Kozlowski  syscon-poweroff:
11661bebc29SKrzysztof Kozlowski    $ref: /schemas/power/reset/syscon-poweroff.yaml#
11796c8bddbSKrzysztof Kozlowski    type: object
11896c8bddbSKrzysztof Kozlowski    description:
11996c8bddbSKrzysztof Kozlowski      Node for power off method
12096c8bddbSKrzysztof Kozlowski
12196c8bddbSKrzysztof Kozlowski  syscon-reboot:
12261bebc29SKrzysztof Kozlowski    $ref: /schemas/power/reset/syscon-reboot.yaml#
12396c8bddbSKrzysztof Kozlowski    type: object
12496c8bddbSKrzysztof Kozlowski    description:
12596c8bddbSKrzysztof Kozlowski      Node for reboot method
12696c8bddbSKrzysztof Kozlowski
12796c8bddbSKrzysztof Kozlowskirequired:
12896c8bddbSKrzysztof Kozlowski  - compatible
12996c8bddbSKrzysztof Kozlowski  - reg
13096c8bddbSKrzysztof Kozlowski
13196c8bddbSKrzysztof KozlowskiadditionalProperties: false
13296c8bddbSKrzysztof Kozlowski
13396c8bddbSKrzysztof KozlowskiallOf:
13496c8bddbSKrzysztof Kozlowski  - if:
13596c8bddbSKrzysztof Kozlowski      properties:
13696c8bddbSKrzysztof Kozlowski        compatible:
13796c8bddbSKrzysztof Kozlowski          contains:
13896c8bddbSKrzysztof Kozlowski            enum:
13996c8bddbSKrzysztof Kozlowski              - samsung,exynos3250-pmu
14096c8bddbSKrzysztof Kozlowski              - samsung,exynos4210-pmu
1418a19d4a1SArtur Weber              - samsung,exynos4212-pmu
14296c8bddbSKrzysztof Kozlowski              - samsung,exynos4412-pmu
14396c8bddbSKrzysztof Kozlowski              - samsung,exynos5250-pmu
14496c8bddbSKrzysztof Kozlowski              - samsung,exynos5410-pmu
14596c8bddbSKrzysztof Kozlowski              - samsung,exynos5420-pmu
14696c8bddbSKrzysztof Kozlowski              - samsung,exynos5433-pmu
14796c8bddbSKrzysztof Kozlowski    then:
14896c8bddbSKrzysztof Kozlowski      required:
14996c8bddbSKrzysztof Kozlowski        - '#clock-cells'
15096c8bddbSKrzysztof Kozlowski        - clock-names
15196c8bddbSKrzysztof Kozlowski        - clocks
15296c8bddbSKrzysztof Kozlowski
153fe6a952bSKrzysztof Kozlowski  - if:
154fe6a952bSKrzysztof Kozlowski      properties:
155fe6a952bSKrzysztof Kozlowski        compatible:
156fe6a952bSKrzysztof Kozlowski          contains:
157fe6a952bSKrzysztof Kozlowski            enum:
158e154a338SKrzysztof Kozlowski              - samsung,exynos3250-pmu
159e154a338SKrzysztof Kozlowski              - samsung,exynos4210-pmu
1608a19d4a1SArtur Weber              - samsung,exynos4212-pmu
161e154a338SKrzysztof Kozlowski              - samsung,exynos4412-pmu
162e154a338SKrzysztof Kozlowski              - samsung,exynos5250-pmu
163e154a338SKrzysztof Kozlowski              - samsung,exynos5420-pmu
164e154a338SKrzysztof Kozlowski              - samsung,exynos5433-pmu
165e154a338SKrzysztof Kozlowski    then:
166e154a338SKrzysztof Kozlowski      properties:
167e154a338SKrzysztof Kozlowski        mipi-phy: true
168e154a338SKrzysztof Kozlowski    else:
169e154a338SKrzysztof Kozlowski      properties:
170e154a338SKrzysztof Kozlowski        mipi-phy: false
171e154a338SKrzysztof Kozlowski
172e154a338SKrzysztof Kozlowski  - if:
173e154a338SKrzysztof Kozlowski      properties:
174e154a338SKrzysztof Kozlowski        compatible:
175e154a338SKrzysztof Kozlowski          contains:
176e154a338SKrzysztof Kozlowski            enum:
177fe6a952bSKrzysztof Kozlowski              - samsung,exynos5250-pmu
178fe6a952bSKrzysztof Kozlowski              - samsung,exynos5420-pmu
179fe6a952bSKrzysztof Kozlowski              - samsung,exynos5433-pmu
180fe6a952bSKrzysztof Kozlowski    then:
181fe6a952bSKrzysztof Kozlowski      properties:
182fe6a952bSKrzysztof Kozlowski        dp-phy: true
183fe6a952bSKrzysztof Kozlowski    else:
184fe6a952bSKrzysztof Kozlowski      properties:
185fe6a952bSKrzysztof Kozlowski        dp-phy: false
186fe6a952bSKrzysztof Kozlowski
18796c8bddbSKrzysztof Kozlowskiexamples:
18896c8bddbSKrzysztof Kozlowski  - |
18996c8bddbSKrzysztof Kozlowski    #include <dt-bindings/clock/exynos5250.h>
19096c8bddbSKrzysztof Kozlowski
19196c8bddbSKrzysztof Kozlowski    pmu_system_controller: system-controller@10040000 {
19296c8bddbSKrzysztof Kozlowski        compatible = "samsung,exynos5250-pmu", "syscon";
19396c8bddbSKrzysztof Kozlowski        reg = <0x10040000 0x5000>;
19496c8bddbSKrzysztof Kozlowski        interrupt-controller;
19596c8bddbSKrzysztof Kozlowski        #interrupt-cells = <3>;
19696c8bddbSKrzysztof Kozlowski        interrupt-parent = <&gic>;
19796c8bddbSKrzysztof Kozlowski        #clock-cells = <1>;
19896c8bddbSKrzysztof Kozlowski        clock-names = "clkout16";
19996c8bddbSKrzysztof Kozlowski        clocks = <&clock CLK_FIN_PLL>;
200fe6a952bSKrzysztof Kozlowski
201fe6a952bSKrzysztof Kozlowski        dp-phy {
202fe6a952bSKrzysztof Kozlowski            compatible = "samsung,exynos5250-dp-video-phy";
203fe6a952bSKrzysztof Kozlowski            #phy-cells = <0>;
204fe6a952bSKrzysztof Kozlowski        };
205fe6a952bSKrzysztof Kozlowski
206fe6a952bSKrzysztof Kozlowski        mipi-phy {
207fe6a952bSKrzysztof Kozlowski            compatible = "samsung,s5pv210-mipi-video-phy";
208fe6a952bSKrzysztof Kozlowski            #phy-cells = <1>;
209fe6a952bSKrzysztof Kozlowski        };
21096c8bddbSKrzysztof Kozlowski    };
211