Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/arm/vexpress-config.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: ARM Versatile Express configuration bus bindings
0008 
0009 maintainers:
0010   - Andre Przywara <andre.przywara@arm.com>
0011 
0012 description:
0013   This is a system control register block, acting as a bridge to the
0014   platform's configuration bus via "system control" interface, addressing
0015   devices with site number, position in the board stack, config controller,
0016   function and device numbers - see motherboard's TRM for more details.
0017 
0018 properties:
0019   compatible:
0020     const: arm,vexpress,config-bus
0021 
0022   arm,vexpress,config-bridge:
0023     $ref: /schemas/types.yaml#/definitions/phandle
0024     description:
0025       Phandle to the sysreg node.
0026 
0027   muxfpga:
0028     type: object
0029     properties:
0030       compatible:
0031         const: arm,vexpress-muxfpga
0032 
0033       arm,vexpress-sysreg,func:
0034         description: FPGA specifier
0035         $ref: /schemas/types.yaml#/definitions/uint32-array
0036         items:
0037           - const: 7
0038           - description: device number
0039 
0040     additionalProperties: false
0041     required:
0042       - compatible
0043       - arm,vexpress-sysreg,func
0044 
0045   shutdown:
0046     type: object
0047     properties:
0048       compatible:
0049         const: arm,vexpress-shutdown
0050 
0051       arm,vexpress-sysreg,func:
0052         description: shutdown identifier
0053         $ref: /schemas/types.yaml#/definitions/uint32-array
0054         items:
0055           - const: 8
0056           - description: device number
0057 
0058     additionalProperties: false
0059     required:
0060       - compatible
0061       - arm,vexpress-sysreg,func
0062 
0063   reboot:
0064     type: object
0065     properties:
0066       compatible:
0067         const: arm,vexpress-reboot
0068 
0069       arm,vexpress-sysreg,func:
0070         description: reboot identifier
0071         $ref: /schemas/types.yaml#/definitions/uint32-array
0072         items:
0073           - const: 9
0074           - description: device number
0075 
0076     additionalProperties: false
0077     required:
0078       - compatible
0079       - arm,vexpress-sysreg,func
0080 
0081   dvimode:
0082     type: object
0083     properties:
0084       compatible:
0085         const: arm,vexpress-dvimode
0086 
0087       arm,vexpress-sysreg,func:
0088         description: DVI mode identifier
0089         $ref: /schemas/types.yaml#/definitions/uint32-array
0090         items:
0091           - const: 11
0092           - description: device number
0093 
0094     additionalProperties: false
0095     required:
0096       - compatible
0097       - arm,vexpress-sysreg,func
0098 
0099 additionalProperties: false
0100 
0101 required:
0102   - compatible
0103   - arm,vexpress,config-bridge
0104 
0105 patternProperties:
0106   'clk[0-9]*$':
0107     type: object
0108     description:
0109       clocks
0110 
0111     properties:
0112       compatible:
0113         const: arm,vexpress-osc
0114 
0115       arm,vexpress-sysreg,func:
0116         description: clock specifier
0117         $ref: /schemas/types.yaml#/definitions/uint32-array
0118         items:
0119           - const: 1
0120           - description: clock number
0121 
0122       freq-range:
0123         $ref: /schemas/types.yaml#/definitions/uint32-array
0124         items:
0125           - description: minimal clock frequency
0126           - description: maximum clock frequency
0127 
0128       "#clock-cells":
0129         const: 0
0130 
0131       clock-output-names:
0132         maxItems: 1
0133 
0134     additionalProperties: false
0135     required:
0136       - compatible
0137       - arm,vexpress-sysreg,func
0138       - "#clock-cells"
0139 
0140   "^volt-.+$":
0141     $ref: /schemas/regulator/regulator.yaml#
0142     properties:
0143       compatible:
0144         const: arm,vexpress-volt
0145 
0146       arm,vexpress-sysreg,func:
0147         description: regulator specifier
0148         $ref: /schemas/types.yaml#/definitions/uint32-array
0149         items:
0150           - const: 2
0151           - description: device number
0152 
0153       label:
0154         maxItems: 1
0155 
0156     unevaluatedProperties: false
0157     required:
0158       - compatible
0159       - arm,vexpress-sysreg,func
0160 
0161   "^amp-.+$":
0162     type: object
0163     properties:
0164       compatible:
0165         const: arm,vexpress-amp
0166 
0167       arm,vexpress-sysreg,func:
0168         description: current sensor identifier
0169         $ref: /schemas/types.yaml#/definitions/uint32-array
0170         items:
0171           - const: 3
0172           - description: device number
0173 
0174       label:
0175         maxItems: 1
0176 
0177     additionalProperties: false
0178     required:
0179       - compatible
0180       - arm,vexpress-sysreg,func
0181 
0182   "^temp-.+$":
0183     type: object
0184     properties:
0185       compatible:
0186         const: arm,vexpress-temp
0187 
0188       arm,vexpress-sysreg,func:
0189         description: temperature sensor identifier
0190         $ref: /schemas/types.yaml#/definitions/uint32-array
0191         items:
0192           - const: 4
0193           - description: device number
0194 
0195       label:
0196         maxItems: 1
0197 
0198     additionalProperties: false
0199     required:
0200       - compatible
0201       - arm,vexpress-sysreg,func
0202 
0203   "^reset[0-9]*$":
0204     type: object
0205     properties:
0206       compatible:
0207         const: arm,vexpress-reset
0208 
0209       arm,vexpress-sysreg,func:
0210         description: reset specifier
0211         $ref: /schemas/types.yaml#/definitions/uint32-array
0212         items:
0213           - const: 5
0214           - description: reset device number
0215 
0216     additionalProperties: false
0217     required:
0218       - compatible
0219       - arm,vexpress-sysreg,func
0220 
0221   "^power-.+$":
0222     type: object
0223     properties:
0224       compatible:
0225         const: arm,vexpress-power
0226 
0227       arm,vexpress-sysreg,func:
0228         description: power sensor identifier
0229         $ref: /schemas/types.yaml#/definitions/uint32-array
0230         items:
0231           - const: 12
0232           - description: device number
0233 
0234       label:
0235         maxItems: 1
0236 
0237     additionalProperties: false
0238     required:
0239       - compatible
0240       - arm,vexpress-sysreg,func
0241 
0242   "^energy(-.+)?$":
0243     type: object
0244     properties:
0245       compatible:
0246         const: arm,vexpress-energy
0247 
0248       arm,vexpress-sysreg,func:
0249         description: energy sensor identifier
0250         $ref: /schemas/types.yaml#/definitions/uint32-array
0251         oneOf:
0252           - items:
0253               - const: 13
0254               - description: device number
0255           - items:
0256               - const: 13
0257               - description: device number
0258               - const: 13
0259               - description: second device number
0260 
0261       label:
0262         maxItems: 1
0263 
0264     additionalProperties: false
0265     required:
0266       - compatible
0267       - arm,vexpress-sysreg,func
0268 
0269 examples:
0270   - |
0271     mcc {
0272         compatible = "arm,vexpress,config-bus";
0273         arm,vexpress,config-bridge = <&v2m_sysreg>;
0274 
0275         clk0 {
0276             compatible = "arm,vexpress-osc";
0277             arm,vexpress-sysreg,func = <1 0>;
0278             #clock-cells = <0>;
0279         };
0280 
0281         energy {
0282             compatible = "arm,vexpress-energy";
0283             arm,vexpress-sysreg,func = <13 0>, <13 1>;
0284         };
0285     };