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