Commit 7ee9e21c authored by Nobuhiro Iwamatsu's avatar Nobuhiro Iwamatsu Committed by Rob Herring
Browse files

dt-bindings: power: reset: convert Xilinx Zynq MPSoC bindings to YAML



Convert power managemnet for Xilinx Zynq MPSoC bindings documentation to
YAML.

Signed-off-by: default avatarNobuhiro Iwamatsu <iwamatsu@nigauri.org>
Link: https://lore.kernel.org/r/20210715095627.228176-1-iwamatsu@nigauri.org


Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent f72999f5
Loading
Loading
Loading
Loading
+0 −61
Original line number Diff line number Diff line
--------------------------------------------------------------------
Device Tree Bindings for the Xilinx Zynq MPSoC Power Management
--------------------------------------------------------------------
The zynqmp-power node describes the power management configurations.
It will control remote suspend/shutdown interfaces.

Required properties:
 - compatible:		Must contain:	"xlnx,zynqmp-power"
 - interrupts:		Interrupt specifier

Optional properties:
 - mbox-names	: Name given to channels seen in the 'mboxes' property.
		  "tx" - Mailbox corresponding to transmit path
		  "rx" - Mailbox corresponding to receive path
 - mboxes	: Standard property to specify a Mailbox. Each value of
		  the mboxes property should contain a phandle to the
		  mailbox controller device node and an args specifier
		  that will be the phandle to the intended sub-mailbox
		  child node to be used for communication. See
		  Documentation/devicetree/bindings/mailbox/mailbox.txt
		  for more details about the generic mailbox controller
		  and client driver bindings. Also see
		  Documentation/devicetree/bindings/mailbox/ \
		  xlnx,zynqmp-ipi-mailbox.txt for typical controller that
		  is used to communicate with this System controllers.

--------
Examples
--------

Example with interrupt method:

firmware {
	zynqmp_firmware: zynqmp-firmware {
		compatible = "xlnx,zynqmp-firmware";
		method = "smc";

		zynqmp_power: zynqmp-power {
			compatible = "xlnx,zynqmp-power";
			interrupts = <0 35 4>;
		};
	};
};

Example with IPI mailbox method:

firmware {
	zynqmp_firmware: zynqmp-firmware {
		compatible = "xlnx,zynqmp-firmware";
		method = "smc";

		zynqmp_power: zynqmp-power {
			compatible = "xlnx,zynqmp-power";
			interrupt-parent = <&gic>;
			interrupts = <0 35 4>;
			mboxes = <&ipi_mailbox_pmu0 0>,
				 <&ipi_mailbox_pmu0 1>;
			mbox-names = "tx", "rx";
		};
	};
};
+83 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/power/reset/xlnx,zynqmp-power.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Xilinx Zynq MPSoC Power Management Device Tree Bindings

maintainers:
  - Michal Simek <michal.simek@xilinx.com>

description: |
  The zynqmp-power node describes the power management configurations.
  It will control remote suspend/shutdown interfaces.

properties:
  compatible:
    const: "xlnx,zynqmp-power"

  interrupts:
    maxItems: 1

  mboxes:
    description: |
      Standard property to specify a Mailbox. Each value of
      the mboxes property should contain a phandle to the
      mailbox controller device node and an args specifier
      that will be the phandle to the intended sub-mailbox
      child node to be used for communication. See
      Documentation/devicetree/bindings/mailbox/mailbox.txt
      for more details about the generic mailbox controller
      and client driver bindings. Also see
      Documentation/devicetree/bindings/mailbox/ \
      xlnx,zynqmp-ipi-mailbox.txt for typical controller that
      is used to communicate with this System controllers.
    items:
      - description: tx channel
      - description: rx channel

  mbox-names:
    description:
      Name given to channels seen in the 'mboxes' property.
    items:
      - const: tx
      - const: rx

required:
  - compatible
  - interrupts

additionalProperties: false

examples:
  - |+

    // Example with interrupt method:

    firmware {
      zynqmp-firmware {
        zynqmp-power {
          compatible = "xlnx,zynqmp-power";
          interrupts = <0 35 4>;
        };
      };
    };

  - |+

    // Example with IPI mailbox method:

    firmware {
      zynqmp-firmware {
        zynqmp-power {
          compatible = "xlnx,zynqmp-power";
          interrupt-parent = <&gic>;
          interrupts = <0 35 4>;
          mboxes = <&ipi_mailbox_pmu1 0>,
                   <&ipi_mailbox_pmu1 1>;
          mbox-names = "tx", "rx";
        };
      };
    };
...