treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / Documentation / devicetree / bindings / arm / samsung / pmu.yaml
blob73b56fc5bf587cc1efa2493fe96ae876c6b2ce6c
1 # SPDX-License-Identifier: GPL-2.0
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/arm/samsung/pmu.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Samsung Exynos SoC series Power Management Unit (PMU)
9 maintainers:
10   - Krzysztof Kozlowski <krzk@kernel.org>
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   required:
28     - compatible
30 properties:
31   compatible:
32     items:
33       - enum:
34           - samsung,exynos3250-pmu
35           - samsung,exynos4210-pmu
36           - samsung,exynos4412-pmu
37           - samsung,exynos5250-pmu
38           - samsung,exynos5260-pmu
39           - samsung,exynos5410-pmu
40           - samsung,exynos5420-pmu
41           - samsung,exynos5433-pmu
42           - samsung,exynos7-pmu
43       - const: syscon
45   reg:
46     maxItems: 1
48   '#clock-cells':
49     const: 1
51   clock-names:
52     description:
53       List of clock names for particular CLKOUT mux inputs
54     minItems: 1
55     maxItems: 32
56     items:
57       pattern: '^clkout([0-9]|[12][0-9]|3[0-1])$'
59   clocks:
60     minItems: 1
61     maxItems: 32
63   interrupt-controller:
64     description:
65       Some PMUs are capable of behaving as an interrupt controller (mostly
66       to wake up a suspended PMU).
68   '#interrupt-cells':
69     description:
70       Must be identical to the that of the parent interrupt controller.
71     const: 3
73   syscon-poweroff:
74     $ref: "../../power/reset/syscon-poweroff.yaml#"
75     type: object
76     description:
77       Node for power off method
79   syscon-reboot:
80     $ref: "../../power/reset/syscon-reboot.yaml#"
81     type: object
82     description:
83       Node for reboot method
85 required:
86   - compatible
87   - reg
88   - '#clock-cells'
89   - clock-names
90   - clocks
92 examples:
93   - |
94     #include <dt-bindings/clock/exynos5250.h>
96     pmu_system_controller: system-controller@10040000 {
97         compatible = "samsung,exynos5250-pmu", "syscon";
98         reg = <0x10040000 0x5000>;
99         interrupt-controller;
100         #interrupt-cells = <3>;
101         interrupt-parent = <&gic>;
102         #clock-cells = <1>;
103         clock-names = "clkout16";
104         clocks = <&clock CLK_FIN_PLL>;
105     };