1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/arm/vexpress-config.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: ARM Versatile Express configuration bus 8 9maintainers: 10 - Andre Przywara <andre.przywara@arm.com> 11 12description: 13 This is a system control register block, acting as a bridge to the 14 platform's configuration bus via "system control" interface, addressing 15 devices with site number, position in the board stack, config controller, 16 function and device numbers - see motherboard's TRM for more details. 17 18properties: 19 compatible: 20 const: arm,vexpress,config-bus 21 22 arm,vexpress,config-bridge: 23 $ref: /schemas/types.yaml#/definitions/phandle 24 description: 25 Phandle to the sysreg node. 26 27 muxfpga: 28 type: object 29 properties: 30 compatible: 31 const: arm,vexpress-muxfpga 32 33 arm,vexpress-sysreg,func: 34 description: FPGA specifier 35 $ref: /schemas/types.yaml#/definitions/uint32-array 36 items: 37 - const: 7 38 - description: device number 39 40 additionalProperties: false 41 required: 42 - compatible 43 - arm,vexpress-sysreg,func 44 45 shutdown: 46 type: object 47 properties: 48 compatible: 49 const: arm,vexpress-shutdown 50 51 arm,vexpress-sysreg,func: 52 description: shutdown identifier 53 $ref: /schemas/types.yaml#/definitions/uint32-array 54 items: 55 - const: 8 56 - description: device number 57 58 additionalProperties: false 59 required: 60 - compatible 61 - arm,vexpress-sysreg,func 62 63 reboot: 64 type: object 65 properties: 66 compatible: 67 const: arm,vexpress-reboot 68 69 arm,vexpress-sysreg,func: 70 description: reboot identifier 71 $ref: /schemas/types.yaml#/definitions/uint32-array 72 items: 73 - const: 9 74 - description: device number 75 76 additionalProperties: false 77 required: 78 - compatible 79 - arm,vexpress-sysreg,func 80 81 dvimode: 82 type: object 83 properties: 84 compatible: 85 const: arm,vexpress-dvimode 86 87 arm,vexpress-sysreg,func: 88 description: DVI mode identifier 89 $ref: /schemas/types.yaml#/definitions/uint32-array 90 items: 91 - const: 11 92 - description: device number 93 94 additionalProperties: false 95 required: 96 - compatible 97 - arm,vexpress-sysreg,func 98 99additionalProperties: false 100 101required: 102 - compatible 103 - arm,vexpress,config-bridge 104 105patternProperties: 106 'clk[0-9]*$': 107 type: object 108 description: 109 clocks 110 111 properties: 112 compatible: 113 const: arm,vexpress-osc 114 115 arm,vexpress-sysreg,func: 116 description: clock specifier 117 $ref: /schemas/types.yaml#/definitions/uint32-array 118 items: 119 - const: 1 120 - description: clock number 121 122 freq-range: 123 $ref: /schemas/types.yaml#/definitions/uint32-array 124 items: 125 - description: minimal clock frequency 126 - description: maximum clock frequency 127 128 "#clock-cells": 129 const: 0 130 131 clock-output-names: 132 maxItems: 1 133 134 additionalProperties: false 135 required: 136 - compatible 137 - arm,vexpress-sysreg,func 138 - "#clock-cells" 139 140 "^volt-.+$": 141 $ref: /schemas/regulator/regulator.yaml# 142 properties: 143 compatible: 144 const: arm,vexpress-volt 145 146 arm,vexpress-sysreg,func: 147 description: regulator specifier 148 $ref: /schemas/types.yaml#/definitions/uint32-array 149 items: 150 - const: 2 151 - description: device number 152 153 label: 154 maxItems: 1 155 156 unevaluatedProperties: false 157 required: 158 - compatible 159 - arm,vexpress-sysreg,func 160 161 "^amp-.+$": 162 type: object 163 properties: 164 compatible: 165 const: arm,vexpress-amp 166 167 arm,vexpress-sysreg,func: 168 description: current sensor identifier 169 $ref: /schemas/types.yaml#/definitions/uint32-array 170 items: 171 - const: 3 172 - description: device number 173 174 label: 175 maxItems: 1 176 177 additionalProperties: false 178 required: 179 - compatible 180 - arm,vexpress-sysreg,func 181 182 "^temp-.+$": 183 type: object 184 properties: 185 compatible: 186 const: arm,vexpress-temp 187 188 arm,vexpress-sysreg,func: 189 description: temperature sensor identifier 190 $ref: /schemas/types.yaml#/definitions/uint32-array 191 items: 192 - const: 4 193 - description: device number 194 195 label: 196 maxItems: 1 197 198 additionalProperties: false 199 required: 200 - compatible 201 - arm,vexpress-sysreg,func 202 203 "^reset[0-9]*$": 204 type: object 205 properties: 206 compatible: 207 const: arm,vexpress-reset 208 209 arm,vexpress-sysreg,func: 210 description: reset specifier 211 $ref: /schemas/types.yaml#/definitions/uint32-array 212 items: 213 - const: 5 214 - description: reset device number 215 216 additionalProperties: false 217 required: 218 - compatible 219 - arm,vexpress-sysreg,func 220 221 "^power-.+$": 222 type: object 223 properties: 224 compatible: 225 const: arm,vexpress-power 226 227 arm,vexpress-sysreg,func: 228 description: power sensor identifier 229 $ref: /schemas/types.yaml#/definitions/uint32-array 230 items: 231 - const: 12 232 - description: device number 233 234 label: 235 maxItems: 1 236 237 additionalProperties: false 238 required: 239 - compatible 240 - arm,vexpress-sysreg,func 241 242 "^energy(-.+)?$": 243 type: object 244 properties: 245 compatible: 246 const: arm,vexpress-energy 247 248 arm,vexpress-sysreg,func: 249 description: energy sensor identifier 250 $ref: /schemas/types.yaml#/definitions/uint32-array 251 oneOf: 252 - items: 253 - const: 13 254 - description: device number 255 - items: 256 - const: 13 257 - description: device number 258 - const: 13 259 - description: second device number 260 261 label: 262 maxItems: 1 263 264 additionalProperties: false 265 required: 266 - compatible 267 - arm,vexpress-sysreg,func 268 269examples: 270 - | 271 mcc { 272 compatible = "arm,vexpress,config-bus"; 273 arm,vexpress,config-bridge = <&v2m_sysreg>; 274 275 clk0 { 276 compatible = "arm,vexpress-osc"; 277 arm,vexpress-sysreg,func = <1 0>; 278 #clock-cells = <0>; 279 }; 280 281 energy { 282 compatible = "arm,vexpress-energy"; 283 arm,vexpress-sysreg,func = <13 0>, <13 1>; 284 }; 285 }; 286