211 lines · yaml
1# SPDX-License-Identifier: GPL-2.02%YAML 1.23---4$id: http://devicetree.org/schemas/soc/samsung/exynos-pmu.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Samsung Exynos SoC series Power Management Unit (PMU)8 9maintainers:10 - Krzysztof Kozlowski <krzk@kernel.org>11 12# Custom select to avoid matching all nodes with 'syscon'13select:14 properties:15 compatible:16 contains:17 enum:18 - google,gs101-pmu19 - samsung,exynos3250-pmu20 - samsung,exynos4210-pmu21 - samsung,exynos4212-pmu22 - samsung,exynos4412-pmu23 - samsung,exynos5250-pmu24 - samsung,exynos5260-pmu25 - samsung,exynos5410-pmu26 - samsung,exynos5420-pmu27 - samsung,exynos5433-pmu28 - samsung,exynos7-pmu29 - samsung,exynos850-pmu30 - samsung-s5pv210-pmu31 required:32 - compatible33 34properties:35 compatible:36 oneOf:37 - items:38 - enum:39 - google,gs101-pmu40 - samsung,exynos3250-pmu41 - samsung,exynos4210-pmu42 - samsung,exynos4212-pmu43 - samsung,exynos4412-pmu44 - samsung,exynos5250-pmu45 - samsung,exynos5260-pmu46 - samsung,exynos5410-pmu47 - samsung,exynos5420-pmu48 - samsung,exynos5433-pmu49 - samsung,exynos7-pmu50 - samsung,exynos850-pmu51 - samsung-s5pv210-pmu52 - const: syscon53 - items:54 - enum:55 - samsung,exynos7885-pmu56 - samsung,exynosautov9-pmu57 - samsung,exynosautov920-pmu58 - tesla,fsd-pmu59 - const: samsung,exynos7-pmu60 - const: syscon61 - items:62 - enum:63 - samsung,exynos3250-pmu64 - samsung,exynos4210-pmu65 - samsung,exynos4212-pmu66 - samsung,exynos4412-pmu67 - samsung,exynos5250-pmu68 - samsung,exynos5420-pmu69 - samsung,exynos5433-pmu70 - const: simple-mfd71 - const: syscon72 73 reg:74 maxItems: 175 76 '#clock-cells':77 const: 178 79 clock-names:80 description:81 List of clock names for particular CLKOUT mux inputs82 minItems: 183 maxItems: 3284 items:85 pattern: '^clkout([0-9]|[12][0-9]|3[0-1])$'86 87 clocks:88 minItems: 189 maxItems: 3290 91 dp-phy:92 $ref: /schemas/phy/samsung,dp-video-phy.yaml93 unevaluatedProperties: false94 95 interrupt-controller:96 description:97 Some PMUs are capable of behaving as an interrupt controller (mostly98 to wake up a suspended PMU).99 100 '#interrupt-cells':101 description:102 Must be identical to the that of the parent interrupt controller.103 const: 3104 105 mipi-phy:106 $ref: /schemas/phy/samsung,mipi-video-phy.yaml107 unevaluatedProperties: false108 109 reboot-mode:110 $ref: /schemas/power/reset/syscon-reboot-mode.yaml111 type: object112 description:113 Reboot mode to alter bootloader behavior for the next boot114 115 syscon-poweroff:116 $ref: /schemas/power/reset/syscon-poweroff.yaml#117 type: object118 description:119 Node for power off method120 121 syscon-reboot:122 $ref: /schemas/power/reset/syscon-reboot.yaml#123 type: object124 description:125 Node for reboot method126 127required:128 - compatible129 - reg130 131additionalProperties: false132 133allOf:134 - if:135 properties:136 compatible:137 contains:138 enum:139 - samsung,exynos3250-pmu140 - samsung,exynos4210-pmu141 - samsung,exynos4212-pmu142 - samsung,exynos4412-pmu143 - samsung,exynos5250-pmu144 - samsung,exynos5410-pmu145 - samsung,exynos5420-pmu146 - samsung,exynos5433-pmu147 then:148 required:149 - '#clock-cells'150 - clock-names151 - clocks152 153 - if:154 properties:155 compatible:156 contains:157 enum:158 - samsung,exynos3250-pmu159 - samsung,exynos4210-pmu160 - samsung,exynos4212-pmu161 - samsung,exynos4412-pmu162 - samsung,exynos5250-pmu163 - samsung,exynos5420-pmu164 - samsung,exynos5433-pmu165 then:166 properties:167 mipi-phy: true168 else:169 properties:170 mipi-phy: false171 172 - if:173 properties:174 compatible:175 contains:176 enum:177 - samsung,exynos5250-pmu178 - samsung,exynos5420-pmu179 - samsung,exynos5433-pmu180 then:181 properties:182 dp-phy: true183 else:184 properties:185 dp-phy: false186 187examples:188 - |189 #include <dt-bindings/clock/exynos5250.h>190 191 pmu_system_controller: system-controller@10040000 {192 compatible = "samsung,exynos5250-pmu", "syscon";193 reg = <0x10040000 0x5000>;194 interrupt-controller;195 #interrupt-cells = <3>;196 interrupt-parent = <&gic>;197 #clock-cells = <1>;198 clock-names = "clkout16";199 clocks = <&clock CLK_FIN_PLL>;200 201 dp-phy {202 compatible = "samsung,exynos5250-dp-video-phy";203 #phy-cells = <0>;204 };205 206 mipi-phy {207 compatible = "samsung,s5pv210-mipi-video-phy";208 #phy-cells = <1>;209 };210 };211