xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/aspeed,ast2x00-scu.yaml (revision 7ef62cebc2f965b0f640263e179276928885e33d)
1*7ef62cebSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0
2*7ef62cebSEmmanuel Vadot%YAML 1.2
3*7ef62cebSEmmanuel Vadot---
4*7ef62cebSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/aspeed,ast2x00-scu.yaml#
5*7ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7ef62cebSEmmanuel Vadot
7*7ef62cebSEmmanuel Vadottitle: Aspeed System Control Unit
8*7ef62cebSEmmanuel Vadot
9*7ef62cebSEmmanuel Vadotdescription:
10*7ef62cebSEmmanuel Vadot  The Aspeed System Control Unit manages the global behaviour of the SoC,
11*7ef62cebSEmmanuel Vadot  configuring elements such as clocks, pinmux, and reset.
12*7ef62cebSEmmanuel Vadot
13*7ef62cebSEmmanuel Vadotmaintainers:
14*7ef62cebSEmmanuel Vadot  - Joel Stanley <joel@jms.id.au>
15*7ef62cebSEmmanuel Vadot  - Andrew Jeffery <andrew@aj.id.au>
16*7ef62cebSEmmanuel Vadot
17*7ef62cebSEmmanuel Vadotproperties:
18*7ef62cebSEmmanuel Vadot  compatible:
19*7ef62cebSEmmanuel Vadot    items:
20*7ef62cebSEmmanuel Vadot      - enum:
21*7ef62cebSEmmanuel Vadot          - aspeed,ast2400-scu
22*7ef62cebSEmmanuel Vadot          - aspeed,ast2500-scu
23*7ef62cebSEmmanuel Vadot          - aspeed,ast2600-scu
24*7ef62cebSEmmanuel Vadot      - const: syscon
25*7ef62cebSEmmanuel Vadot      - const: simple-mfd
26*7ef62cebSEmmanuel Vadot
27*7ef62cebSEmmanuel Vadot  reg:
28*7ef62cebSEmmanuel Vadot    maxItems: 1
29*7ef62cebSEmmanuel Vadot
30*7ef62cebSEmmanuel Vadot  ranges: true
31*7ef62cebSEmmanuel Vadot
32*7ef62cebSEmmanuel Vadot  '#address-cells':
33*7ef62cebSEmmanuel Vadot    const: 1
34*7ef62cebSEmmanuel Vadot
35*7ef62cebSEmmanuel Vadot  '#size-cells':
36*7ef62cebSEmmanuel Vadot    const: 1
37*7ef62cebSEmmanuel Vadot
38*7ef62cebSEmmanuel Vadot  '#clock-cells':
39*7ef62cebSEmmanuel Vadot    const: 1
40*7ef62cebSEmmanuel Vadot
41*7ef62cebSEmmanuel Vadot  '#reset-cells':
42*7ef62cebSEmmanuel Vadot    const: 1
43*7ef62cebSEmmanuel Vadot
44*7ef62cebSEmmanuel VadotpatternProperties:
45*7ef62cebSEmmanuel Vadot  '^p2a-control@[0-9a-f]+$':
46*7ef62cebSEmmanuel Vadot    description: See Documentation/devicetree/bindings/misc/aspeed-p2a-ctrl.txt
47*7ef62cebSEmmanuel Vadot    type: object
48*7ef62cebSEmmanuel Vadot
49*7ef62cebSEmmanuel Vadot  '^pinctrl(@[0-9a-f]+)?$':
50*7ef62cebSEmmanuel Vadot    oneOf:
51*7ef62cebSEmmanuel Vadot      - $ref: /schemas/pinctrl/aspeed,ast2400-pinctrl.yaml
52*7ef62cebSEmmanuel Vadot      - $ref: /schemas/pinctrl/aspeed,ast2500-pinctrl.yaml
53*7ef62cebSEmmanuel Vadot      - $ref: /schemas/pinctrl/aspeed,ast2600-pinctrl.yaml
54*7ef62cebSEmmanuel Vadot
55*7ef62cebSEmmanuel Vadot  '^interrupt-controller@[0-9a-f]+$':
56*7ef62cebSEmmanuel Vadot    description: See Documentation/devicetree/bindings/interrupt-controller/aspeed,ast2xxx-scu-ic.txt
57*7ef62cebSEmmanuel Vadot    type: object
58*7ef62cebSEmmanuel Vadot
59*7ef62cebSEmmanuel Vadot  '^silicon-id@[0-9a-f]+$':
60*7ef62cebSEmmanuel Vadot    description: Unique hardware silicon identifiers within the SoC
61*7ef62cebSEmmanuel Vadot    type: object
62*7ef62cebSEmmanuel Vadot    additionalProperties: false
63*7ef62cebSEmmanuel Vadot
64*7ef62cebSEmmanuel Vadot    properties:
65*7ef62cebSEmmanuel Vadot      compatible:
66*7ef62cebSEmmanuel Vadot        items:
67*7ef62cebSEmmanuel Vadot          - enum:
68*7ef62cebSEmmanuel Vadot              - aspeed,ast2400-silicon-id
69*7ef62cebSEmmanuel Vadot              - aspeed,ast2500-silicon-id
70*7ef62cebSEmmanuel Vadot              - aspeed,ast2600-silicon-id
71*7ef62cebSEmmanuel Vadot          - const: aspeed,silicon-id
72*7ef62cebSEmmanuel Vadot
73*7ef62cebSEmmanuel Vadot      reg:
74*7ef62cebSEmmanuel Vadot        description:
75*7ef62cebSEmmanuel Vadot          The reg should be the unique silicon id register, and not backwards
76*7ef62cebSEmmanuel Vadot          compatible one in eg. the 2600.
77*7ef62cebSEmmanuel Vadot        minItems: 1
78*7ef62cebSEmmanuel Vadot        items:
79*7ef62cebSEmmanuel Vadot          - description: silicon id information registers
80*7ef62cebSEmmanuel Vadot          - description: unique chip id registers
81*7ef62cebSEmmanuel Vadot
82*7ef62cebSEmmanuel Vadotrequired:
83*7ef62cebSEmmanuel Vadot  - compatible
84*7ef62cebSEmmanuel Vadot  - reg
85*7ef62cebSEmmanuel Vadot  - ranges
86*7ef62cebSEmmanuel Vadot  - '#address-cells'
87*7ef62cebSEmmanuel Vadot  - '#size-cells'
88*7ef62cebSEmmanuel Vadot  - '#clock-cells'
89*7ef62cebSEmmanuel Vadot  - '#reset-cells'
90*7ef62cebSEmmanuel Vadot
91*7ef62cebSEmmanuel VadotadditionalProperties: false
92*7ef62cebSEmmanuel Vadot
93*7ef62cebSEmmanuel Vadotexamples:
94*7ef62cebSEmmanuel Vadot  - |
95*7ef62cebSEmmanuel Vadot    syscon@1e6e2000 {
96*7ef62cebSEmmanuel Vadot        compatible = "aspeed,ast2400-scu", "syscon", "simple-mfd";
97*7ef62cebSEmmanuel Vadot        reg = <0x1e6e2000 0x1a8>;
98*7ef62cebSEmmanuel Vadot        #clock-cells = <1>;
99*7ef62cebSEmmanuel Vadot        #reset-cells = <1>;
100*7ef62cebSEmmanuel Vadot
101*7ef62cebSEmmanuel Vadot        #address-cells = <1>;
102*7ef62cebSEmmanuel Vadot        #size-cells = <1>;
103*7ef62cebSEmmanuel Vadot        ranges = <0x0 0x1e6e2000 0x1000>;
104*7ef62cebSEmmanuel Vadot
105*7ef62cebSEmmanuel Vadot        silicon-id@7c {
106*7ef62cebSEmmanuel Vadot            compatible = "aspeed,ast2500-silicon-id", "aspeed,silicon-id";
107*7ef62cebSEmmanuel Vadot            reg = <0x7c 0x4>, <0x150 0x8>;
108*7ef62cebSEmmanuel Vadot        };
109*7ef62cebSEmmanuel Vadot    };
110*7ef62cebSEmmanuel Vadot...
111