1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/soc/imx/fsl,imx93-src.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NXP i.MX93 System Reset Controller
8
9maintainers:
10  - Peng Fan <peng.fan@nxp.com>
11
12description: |
13  The System Reset Controller (SRC) is responsible for the generation of
14  all the system reset signals and boot argument latching.
15
16  Its main functions are as follows,
17  - Deals with all global system reset sources from other modules,
18    and generates global system reset.
19  - Responsible for power gating of MIXs (Slices) and their memory
20    low power control.
21
22properties:
23  compatible:
24    items:
25      - const: fsl,imx93-src
26      - const: syscon
27
28  reg:
29    maxItems: 1
30
31  ranges: true
32
33  '#address-cells':
34    const: 1
35
36  '#size-cells':
37    const: 1
38
39patternProperties:
40  "power-domain@[0-9a-f]+$":
41
42    type: object
43    properties:
44      compatible:
45        items:
46          - const: fsl,imx93-src-slice
47
48      '#power-domain-cells':
49        const: 0
50
51      reg:
52        items:
53          - description: mix slice register region
54          - description: mem slice register region
55
56      clocks:
57        description: |
58          A number of phandles to clocks that need to be enabled
59          during domain power-up sequencing to ensure reset
60          propagation into devices located inside this power domain.
61        minItems: 1
62        maxItems: 5
63
64    required:
65      - compatible
66      - '#power-domain-cells'
67      - reg
68
69required:
70  - compatible
71  - reg
72  - ranges
73  - '#address-cells'
74  - '#size-cells'
75
76additionalProperties: false
77
78examples:
79  - |
80    #include <dt-bindings/clock/imx93-clock.h>
81
82    system-controller@44460000 {
83        compatible = "fsl,imx93-src", "syscon";
84        reg = <0x44460000 0x10000>;
85        #address-cells = <1>;
86        #size-cells = <1>;
87        ranges;
88
89        mediamix: power-domain@0 {
90            compatible = "fsl,imx93-src-slice";
91            reg = <0x44462400 0x400>, <0x44465800 0x400>;
92            #power-domain-cells = <0>;
93            clocks = <&clk IMX93_CLK_MEDIA_AXI>,
94                     <&clk IMX93_CLK_MEDIA_APB>;
95        };
96    };
97