Freescale i.MX General Power Controller v2
==========================================

The i.MX7S/D General Power Control (GPC) block contains Power Gating
Control (PGC) for various power domains.

Required properties:

- compatible: Should be one of:
	- "fsl,imx7d-gpc"
	- "fsl,imx8mq-gpc"

- reg: should be register base and length as documented in the
  datasheet

- interrupts: Should contain GPC interrupt request 1

Power domains contained within GPC node are generic power domain
providers, documented in
Documentation/devicetree/bindings/power/power-domain.yaml, which are
described as subnodes of the power gating controller 'pgc' node,
which, in turn, is expected to contain the following:

Required properties:

- reg: Power domain index. Valid values are defined in
  include/dt-bindings/power/imx7-power.h for fsl,imx7d-gpc and
  include/dt-bindings/power/imx8m-power.h for fsl,imx8mq-gpc

- #power-domain-cells: Should be 0

Optional properties:

- power-supply: Power supply used to power the domain
- clocks: a number of phandles to clocks that need to be enabled during
  domain power-up sequencing to ensure reset propagation into devices
  located inside this power domain

Example:

	gpc: gpc@303a0000 {
		compatible = "fsl,imx7d-gpc";
		reg = <0x303a0000 0x1000>;
		interrupt-controller;
		interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
		#interrupt-cells = <3>;
		interrupt-parent = <&intc>;

		pgc {
			#address-cells = <1>;
			#size-cells = <0>;

			pgc_pcie_phy: power-domain@1 {
				#power-domain-cells = <0>;

				reg = <1>;
				power-supply = <&reg_1p0d>;
			};
		};
	};


Specifying power domain for IP modules
======================================

IP cores belonging to a power domain should contain a 'power-domains'
property that is a phandle for PGC node representing the domain.

Example of a device that is part of the PCIE_PHY power domain:

	pcie: pcie@33800000 {
	      reg = <0x33800000 0x4000>,
	            <0x4ff00000 0x80000>;
		/* ... */
		power-domains = <&pgc_pcie_phy>;
		/* ... */
	};
