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