1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/soc/samsung/exynos-pmu.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Samsung Exynos SoC series Power Management Unit (PMU)
8
9 maintainers:
10 - Krzysztof Kozlowski <krzk@kernel.org>
11
12 # Custom select to avoid matching all nodes with 'syscon'
13 select:
14 properties:
15 compatible:
16 contains:
17 enum:
18 - samsung,exynos3250-pmu
19 - samsung,exynos4210-pmu
20 - samsung,exynos4412-pmu
21 - samsung,exynos5250-pmu
22 - samsung,exynos5260-pmu
23 - samsung,exynos5410-pmu
24 - samsung,exynos5420-pmu
25 - samsung,exynos5433-pmu
26 - samsung,exynos7-pmu
27 - samsung,exynos850-pmu
28 - samsung-s5pv210-pmu
29 required:
30 - compatible
31
32 properties:
33 compatible:
34 items:
35 - enum:
36 - samsung,exynos3250-pmu
37 - samsung,exynos4210-pmu
38 - samsung,exynos4412-pmu
39 - samsung,exynos5250-pmu
40 - samsung,exynos5260-pmu
41 - samsung,exynos5410-pmu
42 - samsung,exynos5420-pmu
43 - samsung,exynos5433-pmu
44 - samsung,exynos7-pmu
45 - samsung,exynos850-pmu
46 - samsung-s5pv210-pmu
47 - const: syscon
48
49 reg:
50 maxItems: 1
51
52 '#clock-cells':
53 const: 1
54
55 clock-names:
56 description:
57 List of clock names for particular CLKOUT mux inputs
58 minItems: 1
59 maxItems: 32
60 items:
61 pattern: '^clkout([0-9]|[12][0-9]|3[0-1])$'
62
63 clocks:
64 minItems: 1
65 maxItems: 32
66
67 interrupt-controller:
68 description:
69 Some PMUs are capable of behaving as an interrupt controller (mostly
70 to wake up a suspended PMU).
71
72 '#interrupt-cells':
73 description:
74 Must be identical to the that of the parent interrupt controller.
75 const: 3
76
77 reboot-mode:
78 $ref: /schemas/power/reset/syscon-reboot-mode.yaml
79 type: object
80 description:
81 Reboot mode to alter bootloader behavior for the next boot
82
83 syscon-poweroff:
84 $ref: /schemas/power/reset/syscon-poweroff.yaml#
85 type: object
86 description:
87 Node for power off method
88
89 syscon-reboot:
90 $ref: /schemas/power/reset/syscon-reboot.yaml#
91 type: object
92 description:
93 Node for reboot method
94
95 required:
96 - compatible
97 - reg
98
99 additionalProperties: false
100
101 allOf:
102 - if:
103 properties:
104 compatible:
105 contains:
106 enum:
107 - samsung,exynos3250-pmu
108 - samsung,exynos4210-pmu
109 - samsung,exynos4412-pmu
110 - samsung,exynos5250-pmu
111 - samsung,exynos5410-pmu
112 - samsung,exynos5420-pmu
113 - samsung,exynos5433-pmu
114 then:
115 required:
116 - '#clock-cells'
117 - clock-names
118 - clocks
119
120 examples:
121 - |
122 #include <dt-bindings/clock/exynos5250.h>
123
124 pmu_system_controller: system-controller@10040000 {
125 compatible = "samsung,exynos5250-pmu", "syscon";
126 reg = <0x10040000 0x5000>;
127 interrupt-controller;
128 #interrupt-cells = <3>;
129 interrupt-parent = <&gic>;
130 #clock-cells = <1>;
131 clock-names = "clkout16";
132 clocks = <&clock CLK_FIN_PLL>;
133 };
Cache object: dd9546fbd6ddb64228546a50eac9b2de
|