-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: Add GPCv2 power gating driver
Add DT bindings for power domain driver for GPCv2 IP block found in i.MX7 SoCs. Cc: yurovsky@gmail.com Cc: Lucas Stach <l.stach@pengutronix.de> Cc: Rob Herring <robh+dt@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Dong Aisheng <dongas86@gmail.com> Cc: devicetree@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
- Loading branch information
Andrey Smirnov
authored and
Shawn Guo
committed
Apr 7, 2017
1 parent
bd01f06
commit 2d9eb1d
Showing
2 changed files
with
87 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
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 "fsl,imx7d-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.txt, 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 | ||
|
||
- #power-domain-cells: Should be 0 | ||
|
||
Optional properties: | ||
|
||
- power-supply: Power supply used to power the 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@3 { | ||
#power-domain-cells = <0>; | ||
|
||
reg = <IMX7_POWER_DOMAIN_PCIE_PHY>; | ||
power-supply = <®_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>; | ||
/* ... */ | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
/* | ||
* Copyright (C) 2017 Impinj | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License version 2 as | ||
* published by the Free Software Foundation. | ||
*/ | ||
|
||
#ifndef __DT_BINDINGS_IMX7_POWER_H__ | ||
#define __DT_BINDINGS_IMX7_POWER_H__ | ||
|
||
#define IMX7_POWER_DOMAIN_MIPI_PHY 0 | ||
#define IMX7_POWER_DOMAIN_PCIE_PHY 1 | ||
#define IMX7_POWER_DOMAIN_USB_HSIC_PHY 2 | ||
|
||
#endif |