1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2e67e8565SEmmanuel Vadot%YAML 1.2 3e67e8565SEmmanuel Vadot--- 4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/soc/samsung/exynos-pmu.yaml# 5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6e67e8565SEmmanuel Vadot 7e67e8565SEmmanuel Vadottitle: Samsung Exynos SoC series Power Management Unit (PMU) 8e67e8565SEmmanuel Vadot 9e67e8565SEmmanuel Vadotmaintainers: 10e67e8565SEmmanuel Vadot - Krzysztof Kozlowski <krzk@kernel.org> 11e67e8565SEmmanuel Vadot 12e67e8565SEmmanuel Vadot# Custom select to avoid matching all nodes with 'syscon' 13e67e8565SEmmanuel Vadotselect: 14e67e8565SEmmanuel Vadot properties: 15e67e8565SEmmanuel Vadot compatible: 16e67e8565SEmmanuel Vadot contains: 17e67e8565SEmmanuel Vadot enum: 18*8d13bc63SEmmanuel Vadot - google,gs101-pmu 19e67e8565SEmmanuel Vadot - samsung,exynos3250-pmu 20e67e8565SEmmanuel Vadot - samsung,exynos4210-pmu 21f126890aSEmmanuel Vadot - samsung,exynos4212-pmu 22e67e8565SEmmanuel Vadot - samsung,exynos4412-pmu 23e67e8565SEmmanuel Vadot - samsung,exynos5250-pmu 24e67e8565SEmmanuel Vadot - samsung,exynos5260-pmu 25e67e8565SEmmanuel Vadot - samsung,exynos5410-pmu 26e67e8565SEmmanuel Vadot - samsung,exynos5420-pmu 27e67e8565SEmmanuel Vadot - samsung,exynos5433-pmu 28e67e8565SEmmanuel Vadot - samsung,exynos7-pmu 29e67e8565SEmmanuel Vadot - samsung,exynos850-pmu 30e67e8565SEmmanuel Vadot - samsung-s5pv210-pmu 31e67e8565SEmmanuel Vadot required: 32e67e8565SEmmanuel Vadot - compatible 33e67e8565SEmmanuel Vadot 34e67e8565SEmmanuel Vadotproperties: 35e67e8565SEmmanuel Vadot compatible: 36cb7aa33aSEmmanuel Vadot oneOf: 37cb7aa33aSEmmanuel Vadot - items: 38e67e8565SEmmanuel Vadot - enum: 39*8d13bc63SEmmanuel Vadot - google,gs101-pmu 40e67e8565SEmmanuel Vadot - samsung,exynos3250-pmu 41e67e8565SEmmanuel Vadot - samsung,exynos4210-pmu 42f126890aSEmmanuel Vadot - samsung,exynos4212-pmu 43e67e8565SEmmanuel Vadot - samsung,exynos4412-pmu 44e67e8565SEmmanuel Vadot - samsung,exynos5250-pmu 45e67e8565SEmmanuel Vadot - samsung,exynos5260-pmu 46e67e8565SEmmanuel Vadot - samsung,exynos5410-pmu 47e67e8565SEmmanuel Vadot - samsung,exynos5420-pmu 48e67e8565SEmmanuel Vadot - samsung,exynos5433-pmu 49e67e8565SEmmanuel Vadot - samsung,exynos7-pmu 50e67e8565SEmmanuel Vadot - samsung,exynos850-pmu 51e67e8565SEmmanuel Vadot - samsung-s5pv210-pmu 52e67e8565SEmmanuel Vadot - const: syscon 53cb7aa33aSEmmanuel Vadot - items: 54cb7aa33aSEmmanuel Vadot - enum: 55*8d13bc63SEmmanuel Vadot - samsung,exynos7885-pmu 56*8d13bc63SEmmanuel Vadot - samsung,exynosautov9-pmu 57*8d13bc63SEmmanuel Vadot - samsung,exynosautov920-pmu 58*8d13bc63SEmmanuel Vadot - tesla,fsd-pmu 59*8d13bc63SEmmanuel Vadot - const: samsung,exynos7-pmu 60*8d13bc63SEmmanuel Vadot - const: syscon 61*8d13bc63SEmmanuel Vadot - items: 62*8d13bc63SEmmanuel Vadot - enum: 63fac71e4eSEmmanuel Vadot - samsung,exynos3250-pmu 64fac71e4eSEmmanuel Vadot - samsung,exynos4210-pmu 65f126890aSEmmanuel Vadot - samsung,exynos4212-pmu 66fac71e4eSEmmanuel Vadot - samsung,exynos4412-pmu 67cb7aa33aSEmmanuel Vadot - samsung,exynos5250-pmu 68cb7aa33aSEmmanuel Vadot - samsung,exynos5420-pmu 69cb7aa33aSEmmanuel Vadot - samsung,exynos5433-pmu 70cb7aa33aSEmmanuel Vadot - const: simple-mfd 71cb7aa33aSEmmanuel Vadot - const: syscon 72e67e8565SEmmanuel Vadot 73e67e8565SEmmanuel Vadot reg: 74e67e8565SEmmanuel Vadot maxItems: 1 75e67e8565SEmmanuel Vadot 76e67e8565SEmmanuel Vadot '#clock-cells': 77e67e8565SEmmanuel Vadot const: 1 78e67e8565SEmmanuel Vadot 79e67e8565SEmmanuel Vadot clock-names: 80e67e8565SEmmanuel Vadot description: 81e67e8565SEmmanuel Vadot List of clock names for particular CLKOUT mux inputs 82e67e8565SEmmanuel Vadot minItems: 1 83e67e8565SEmmanuel Vadot maxItems: 32 84e67e8565SEmmanuel Vadot items: 85e67e8565SEmmanuel Vadot pattern: '^clkout([0-9]|[12][0-9]|3[0-1])$' 86e67e8565SEmmanuel Vadot 87e67e8565SEmmanuel Vadot clocks: 88e67e8565SEmmanuel Vadot minItems: 1 89e67e8565SEmmanuel Vadot maxItems: 32 90e67e8565SEmmanuel Vadot 91cb7aa33aSEmmanuel Vadot dp-phy: 92cb7aa33aSEmmanuel Vadot $ref: /schemas/phy/samsung,dp-video-phy.yaml 93cb7aa33aSEmmanuel Vadot unevaluatedProperties: false 94cb7aa33aSEmmanuel Vadot 95e67e8565SEmmanuel Vadot interrupt-controller: 96e67e8565SEmmanuel Vadot description: 97e67e8565SEmmanuel Vadot Some PMUs are capable of behaving as an interrupt controller (mostly 98e67e8565SEmmanuel Vadot to wake up a suspended PMU). 99e67e8565SEmmanuel Vadot 100e67e8565SEmmanuel Vadot '#interrupt-cells': 101e67e8565SEmmanuel Vadot description: 102e67e8565SEmmanuel Vadot Must be identical to the that of the parent interrupt controller. 103e67e8565SEmmanuel Vadot const: 3 104e67e8565SEmmanuel Vadot 105cb7aa33aSEmmanuel Vadot mipi-phy: 106cb7aa33aSEmmanuel Vadot $ref: /schemas/phy/samsung,mipi-video-phy.yaml 107cb7aa33aSEmmanuel Vadot unevaluatedProperties: false 108cb7aa33aSEmmanuel Vadot 109b97ee269SEmmanuel Vadot reboot-mode: 110b97ee269SEmmanuel Vadot $ref: /schemas/power/reset/syscon-reboot-mode.yaml 111b97ee269SEmmanuel Vadot type: object 112b97ee269SEmmanuel Vadot description: 113b97ee269SEmmanuel Vadot Reboot mode to alter bootloader behavior for the next boot 114b97ee269SEmmanuel Vadot 115e67e8565SEmmanuel Vadot syscon-poweroff: 116b97ee269SEmmanuel Vadot $ref: /schemas/power/reset/syscon-poweroff.yaml# 117e67e8565SEmmanuel Vadot type: object 118e67e8565SEmmanuel Vadot description: 119e67e8565SEmmanuel Vadot Node for power off method 120e67e8565SEmmanuel Vadot 121e67e8565SEmmanuel Vadot syscon-reboot: 122b97ee269SEmmanuel Vadot $ref: /schemas/power/reset/syscon-reboot.yaml# 123e67e8565SEmmanuel Vadot type: object 124e67e8565SEmmanuel Vadot description: 125e67e8565SEmmanuel Vadot Node for reboot method 126e67e8565SEmmanuel Vadot 127e67e8565SEmmanuel Vadotrequired: 128e67e8565SEmmanuel Vadot - compatible 129e67e8565SEmmanuel Vadot - reg 130e67e8565SEmmanuel Vadot 131e67e8565SEmmanuel VadotadditionalProperties: false 132e67e8565SEmmanuel Vadot 133e67e8565SEmmanuel VadotallOf: 134e67e8565SEmmanuel Vadot - if: 135e67e8565SEmmanuel Vadot properties: 136e67e8565SEmmanuel Vadot compatible: 137e67e8565SEmmanuel Vadot contains: 138e67e8565SEmmanuel Vadot enum: 139e67e8565SEmmanuel Vadot - samsung,exynos3250-pmu 140e67e8565SEmmanuel Vadot - samsung,exynos4210-pmu 141f126890aSEmmanuel Vadot - samsung,exynos4212-pmu 142e67e8565SEmmanuel Vadot - samsung,exynos4412-pmu 143e67e8565SEmmanuel Vadot - samsung,exynos5250-pmu 144e67e8565SEmmanuel Vadot - samsung,exynos5410-pmu 145e67e8565SEmmanuel Vadot - samsung,exynos5420-pmu 146e67e8565SEmmanuel Vadot - samsung,exynos5433-pmu 147e67e8565SEmmanuel Vadot then: 148e67e8565SEmmanuel Vadot required: 149e67e8565SEmmanuel Vadot - '#clock-cells' 150e67e8565SEmmanuel Vadot - clock-names 151e67e8565SEmmanuel Vadot - clocks 152e67e8565SEmmanuel Vadot 153cb7aa33aSEmmanuel Vadot - if: 154cb7aa33aSEmmanuel Vadot properties: 155cb7aa33aSEmmanuel Vadot compatible: 156cb7aa33aSEmmanuel Vadot contains: 157cb7aa33aSEmmanuel Vadot enum: 158fac71e4eSEmmanuel Vadot - samsung,exynos3250-pmu 159fac71e4eSEmmanuel Vadot - samsung,exynos4210-pmu 160f126890aSEmmanuel Vadot - samsung,exynos4212-pmu 161fac71e4eSEmmanuel Vadot - samsung,exynos4412-pmu 162fac71e4eSEmmanuel Vadot - samsung,exynos5250-pmu 163fac71e4eSEmmanuel Vadot - samsung,exynos5420-pmu 164fac71e4eSEmmanuel Vadot - samsung,exynos5433-pmu 165fac71e4eSEmmanuel Vadot then: 166fac71e4eSEmmanuel Vadot properties: 167fac71e4eSEmmanuel Vadot mipi-phy: true 168fac71e4eSEmmanuel Vadot else: 169fac71e4eSEmmanuel Vadot properties: 170fac71e4eSEmmanuel Vadot mipi-phy: false 171fac71e4eSEmmanuel Vadot 172fac71e4eSEmmanuel Vadot - if: 173fac71e4eSEmmanuel Vadot properties: 174fac71e4eSEmmanuel Vadot compatible: 175fac71e4eSEmmanuel Vadot contains: 176fac71e4eSEmmanuel Vadot enum: 177cb7aa33aSEmmanuel Vadot - samsung,exynos5250-pmu 178cb7aa33aSEmmanuel Vadot - samsung,exynos5420-pmu 179cb7aa33aSEmmanuel Vadot - samsung,exynos5433-pmu 180cb7aa33aSEmmanuel Vadot then: 181cb7aa33aSEmmanuel Vadot properties: 182cb7aa33aSEmmanuel Vadot dp-phy: true 183cb7aa33aSEmmanuel Vadot else: 184cb7aa33aSEmmanuel Vadot properties: 185cb7aa33aSEmmanuel Vadot dp-phy: false 186cb7aa33aSEmmanuel Vadot 187e67e8565SEmmanuel Vadotexamples: 188e67e8565SEmmanuel Vadot - | 189e67e8565SEmmanuel Vadot #include <dt-bindings/clock/exynos5250.h> 190e67e8565SEmmanuel Vadot 191e67e8565SEmmanuel Vadot pmu_system_controller: system-controller@10040000 { 192e67e8565SEmmanuel Vadot compatible = "samsung,exynos5250-pmu", "syscon"; 193e67e8565SEmmanuel Vadot reg = <0x10040000 0x5000>; 194e67e8565SEmmanuel Vadot interrupt-controller; 195e67e8565SEmmanuel Vadot #interrupt-cells = <3>; 196e67e8565SEmmanuel Vadot interrupt-parent = <&gic>; 197e67e8565SEmmanuel Vadot #clock-cells = <1>; 198e67e8565SEmmanuel Vadot clock-names = "clkout16"; 199e67e8565SEmmanuel Vadot clocks = <&clock CLK_FIN_PLL>; 200cb7aa33aSEmmanuel Vadot 201cb7aa33aSEmmanuel Vadot dp-phy { 202cb7aa33aSEmmanuel Vadot compatible = "samsung,exynos5250-dp-video-phy"; 203cb7aa33aSEmmanuel Vadot #phy-cells = <0>; 204cb7aa33aSEmmanuel Vadot }; 205cb7aa33aSEmmanuel Vadot 206cb7aa33aSEmmanuel Vadot mipi-phy { 207cb7aa33aSEmmanuel Vadot compatible = "samsung,s5pv210-mipi-video-phy"; 208cb7aa33aSEmmanuel Vadot #phy-cells = <1>; 209cb7aa33aSEmmanuel Vadot }; 210e67e8565SEmmanuel Vadot }; 211