xref: /linux/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
17fd530beSLucas Stach# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
27fd530beSLucas Stach%YAML 1.2
37fd530beSLucas Stach---
47fd530beSLucas Stach$id: http://devicetree.org/schemas/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml#
57fd530beSLucas Stach$schema: http://devicetree.org/meta-schemas/core.yaml#
67fd530beSLucas Stach
77fd530beSLucas Stachtitle: NXP i.MX8MM VPU blk-ctrl
87fd530beSLucas Stach
97fd530beSLucas Stachmaintainers:
107fd530beSLucas Stach  - Lucas Stach <l.stach@pengutronix.de>
117fd530beSLucas Stach
127fd530beSLucas Stachdescription:
137fd530beSLucas Stach  The i.MX8MM VPU blk-ctrl is a top-level peripheral providing access to
147fd530beSLucas Stach  the NoC and ensuring proper power sequencing of the VPU peripherals
157fd530beSLucas Stach  located in the VPU domain of the SoC.
167fd530beSLucas Stach
177fd530beSLucas Stachproperties:
187fd530beSLucas Stach  compatible:
197fd530beSLucas Stach    items:
207fd530beSLucas Stach      - const: fsl,imx8mm-vpu-blk-ctrl
217fd530beSLucas Stach      - const: syscon
227fd530beSLucas Stach
237fd530beSLucas Stach  reg:
247fd530beSLucas Stach    maxItems: 1
257fd530beSLucas Stach
267fd530beSLucas Stach  '#power-domain-cells':
277fd530beSLucas Stach    const: 1
287fd530beSLucas Stach
297fd530beSLucas Stach  power-domains:
307fd530beSLucas Stach    maxItems: 4
317fd530beSLucas Stach
327fd530beSLucas Stach  power-domain-names:
33c7ebd541SPeng Fan    maxItems: 4
34c7ebd541SPeng Fan
35c7ebd541SPeng Fan  clocks:
36c7ebd541SPeng Fan    maxItems: 3
37c7ebd541SPeng Fan
38c7ebd541SPeng Fan  clock-names:
39c7ebd541SPeng Fan    maxItems: 3
40c7ebd541SPeng Fan
41c7ebd541SPeng Fan  interconnects:
42c7ebd541SPeng Fan    maxItems: 3
43c7ebd541SPeng Fan
44c7ebd541SPeng Fan  interconnect-names:
45c7ebd541SPeng Fan    maxItems: 3
46c7ebd541SPeng Fan
47c7ebd541SPeng Fanrequired:
48c7ebd541SPeng Fan  - compatible
49c7ebd541SPeng Fan  - reg
50c7ebd541SPeng Fan  - power-domains
51c7ebd541SPeng Fan  - power-domain-names
52c7ebd541SPeng Fan  - clocks
53c7ebd541SPeng Fan  - clock-names
54c7ebd541SPeng Fan
55c7ebd541SPeng FanallOf:
56c7ebd541SPeng Fan  - if:
57c7ebd541SPeng Fan      properties:
58c7ebd541SPeng Fan        compatible:
59c7ebd541SPeng Fan          contains:
60c7ebd541SPeng Fan            const: fsl,imx8mm-vpu-blk-ctrl
61c7ebd541SPeng Fan    then:
62c7ebd541SPeng Fan      properties:
63c7ebd541SPeng Fan        power-domains:
64c7ebd541SPeng Fan          items:
65c7ebd541SPeng Fan            - description: bus power domain
66c7ebd541SPeng Fan            - description: G1 decoder power domain
67c7ebd541SPeng Fan            - description: G2 decoder power domain
68c7ebd541SPeng Fan            - description: H1 encoder power domain
69c7ebd541SPeng Fan
70c7ebd541SPeng Fan        power-domain-names:
717fd530beSLucas Stach          items:
727fd530beSLucas Stach            - const: bus
737fd530beSLucas Stach            - const: g1
747fd530beSLucas Stach            - const: g2
757fd530beSLucas Stach            - const: h1
767fd530beSLucas Stach
777fd530beSLucas Stach        clocks:
78c7ebd541SPeng Fan          items:
79c7ebd541SPeng Fan            - description: G1 decoder clk
80c7ebd541SPeng Fan            - description: G2 decoder clk
81c7ebd541SPeng Fan            - description: H1 encoder clk
827fd530beSLucas Stach
837fd530beSLucas Stach        clock-names:
847fd530beSLucas Stach          items:
857fd530beSLucas Stach            - const: g1
867fd530beSLucas Stach            - const: g2
877fd530beSLucas Stach            - const: h1
887fd530beSLucas Stach
892345fc8dSPeng Fan        interconnects:
902345fc8dSPeng Fan          items:
912345fc8dSPeng Fan            - description: G1 decoder interconnect
922345fc8dSPeng Fan            - description: G2 decoder interconnect
932345fc8dSPeng Fan            - description: H1 encoder power domain
942345fc8dSPeng Fan
952345fc8dSPeng Fan        interconnect-names:
962345fc8dSPeng Fan          items:
972345fc8dSPeng Fan            - const: g1
982345fc8dSPeng Fan            - const: g2
992345fc8dSPeng Fan            - const: h1
1002345fc8dSPeng Fan
101c7ebd541SPeng Fan  - if:
102c7ebd541SPeng Fan      properties:
103c7ebd541SPeng Fan        compatible:
104c7ebd541SPeng Fan          contains:
105c7ebd541SPeng Fan            const: fsl,imx8mp-vpu-blk-ctrl
106c7ebd541SPeng Fan    then:
107c7ebd541SPeng Fan      properties:
108c7ebd541SPeng Fan        power-domains:
109c7ebd541SPeng Fan          items:
110c7ebd541SPeng Fan            - description: bus power domain
111c7ebd541SPeng Fan            - description: G1 decoder power domain
112c7ebd541SPeng Fan            - description: G2 decoder power domain
113c7ebd541SPeng Fan            - description: VC8000E encoder power domain
114c7ebd541SPeng Fan
115c7ebd541SPeng Fan        power-domain-names:
116c7ebd541SPeng Fan          items:
117c7ebd541SPeng Fan            - const: bus
118c7ebd541SPeng Fan            - const: g1
119c7ebd541SPeng Fan            - const: g2
120c7ebd541SPeng Fan            - const: vc8000e
121c7ebd541SPeng Fan
122c7ebd541SPeng Fan        clocks:
123c7ebd541SPeng Fan          items:
124c7ebd541SPeng Fan            - description: G1 decoder clk
125c7ebd541SPeng Fan            - description: G2 decoder clk
126c7ebd541SPeng Fan            - description: VC8000E encoder clk
127c7ebd541SPeng Fan
128c7ebd541SPeng Fan        clock-names:
129c7ebd541SPeng Fan          items:
130c7ebd541SPeng Fan            - const: g1
131c7ebd541SPeng Fan            - const: g2
132c7ebd541SPeng Fan            - const: vc8000e
133c7ebd541SPeng Fan
134c7ebd541SPeng Fan        interconnects:
135c7ebd541SPeng Fan          items:
136c7ebd541SPeng Fan            - description: G1 decoder interconnect
137c7ebd541SPeng Fan            - description: G2 decoder interconnect
138c7ebd541SPeng Fan            - description: VC8000E encoder interconnect
139c7ebd541SPeng Fan
140c7ebd541SPeng Fan        interconnect-names:
141c7ebd541SPeng Fan          items:
142c7ebd541SPeng Fan            - const: g1
143c7ebd541SPeng Fan            - const: g2
144c7ebd541SPeng Fan            - const: vc8000e
1457fd530beSLucas Stach
1467fd530beSLucas StachadditionalProperties: false
1477fd530beSLucas Stach
1487fd530beSLucas Stachexamples:
1497fd530beSLucas Stach  - |
1507fd530beSLucas Stach    #include <dt-bindings/clock/imx8mm-clock.h>
1517fd530beSLucas Stach    #include <dt-bindings/power/imx8mm-power.h>
1527fd530beSLucas Stach
153*9320fad1SMarek Vasut    blk-ctrl@38330000 {
1547fd530beSLucas Stach      compatible = "fsl,imx8mm-vpu-blk-ctrl", "syscon";
1557fd530beSLucas Stach      reg = <0x38330000 0x100>;
1567fd530beSLucas Stach      power-domains = <&pgc_vpumix>, <&pgc_vpu_g1>,
1577fd530beSLucas Stach                      <&pgc_vpu_g2>, <&pgc_vpu_h1>;
1587fd530beSLucas Stach      power-domain-names = "bus", "g1", "g2", "h1";
1597fd530beSLucas Stach      clocks = <&clk IMX8MM_CLK_VPU_G1_ROOT>,
1607fd530beSLucas Stach               <&clk IMX8MM_CLK_VPU_G2_ROOT>,
1617fd530beSLucas Stach               <&clk IMX8MM_CLK_VPU_H1_ROOT>;
1627fd530beSLucas Stach      clock-names = "g1", "g2", "h1";
1637fd530beSLucas Stach      #power-domain-cells = <1>;
1647fd530beSLucas Stach    };
165