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