1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/power/reset/xlnx,zynqmp-power.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Xilinx Zynq MPSoC Power Management
8
9maintainers:
10  - Michal Simek <michal.simek@amd.com>
11
12description: |
13  The zynqmp-power node describes the power management configurations.
14  It will control remote suspend/shutdown interfaces.
15
16properties:
17  compatible:
18    const: xlnx,zynqmp-power
19
20  interrupts:
21    maxItems: 1
22
23  mboxes:
24    description: |
25      Standard property to specify a Mailbox. Each value of
26      the mboxes property should contain a phandle to the
27      mailbox controller device node and an args specifier
28      that will be the phandle to the intended sub-mailbox
29      child node to be used for communication. See
30      Documentation/devicetree/bindings/mailbox/mailbox.txt
31      for more details about the generic mailbox controller
32      and client driver bindings. Also see
33      Documentation/devicetree/bindings/mailbox/ \
34      xlnx,zynqmp-ipi-mailbox.txt for typical controller that
35      is used to communicate with this System controllers.
36    items:
37      - description: tx channel
38      - description: rx channel
39
40  mbox-names:
41    description:
42      Name given to channels seen in the 'mboxes' property.
43    items:
44      - const: tx
45      - const: rx
46
47required:
48  - compatible
49  - interrupts
50
51additionalProperties: false
52
53examples:
54  - |+
55
56    // Example with interrupt method:
57
58    firmware {
59      zynqmp-firmware {
60        power-management {
61          compatible = "xlnx,zynqmp-power";
62          interrupts = <0 35 4>;
63        };
64      };
65    };
66
67  - |+
68
69    // Example with IPI mailbox method:
70
71    firmware {
72      zynqmp-firmware {
73        power-management {
74          compatible = "xlnx,zynqmp-power";
75          interrupt-parent = <&gic>;
76          interrupts = <0 35 4>;
77          mboxes = <&ipi_mailbox_pmu1 0>,
78                   <&ipi_mailbox_pmu1 1>;
79          mbox-names = "tx", "rx";
80        };
81      };
82    };
83...
84