1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/syscon-common.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: System Controller Registers R/W Common Properties
8
9description:
10  System controller node represents a register region containing a set
11  of miscellaneous registers. The registers are not cohesive enough to
12  represent as any specific type of device. The typical use-case is
13  for some other node's driver, or platform-specific code, to acquire
14  a reference to the syscon node (e.g. by phandle, node path, or
15  search using a specific compatible value), interrogate the node (or
16  associated OS driver) to determine the location of the registers,
17  and access the registers directly.
18
19maintainers:
20  - Lee Jones <lee@kernel.org>
21
22select:
23  properties:
24    compatible:
25      contains:
26        const: syscon
27
28  required:
29    - compatible
30
31properties:
32  compatible:
33    contains:
34      const: syscon
35    minItems: 2
36    maxItems: 5  # Should be enough
37
38  reg:
39    maxItems: 1
40
41  reg-io-width:
42    description:
43      The size (in bytes) of the IO accesses that should be performed
44      on the device.
45    enum: [1, 2, 4, 8]
46
47required:
48  - compatible
49  - reg
50
51allOf:
52  - if:
53      properties:
54        compatible:
55          contains:
56            const: simple-mfd
57    then:
58      properties:
59        compatible:
60          minItems: 3
61          maxItems: 5
62
63additionalProperties: true
64
65examples:
66  - |
67    syscon: syscon@1c00000 {
68        compatible = "allwinner,sun8i-h3-system-controller", "syscon";
69        reg = <0x01c00000 0x1000>;
70    };
71...
72