aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorPhilipp Zabel <p.zabel@pengutronix.de>2015-02-23 12:40:11 -0500
committerShawn Guo <shawn.guo@linaro.org>2015-03-10 20:58:54 -0400
commit58e4a668be82362c32577ef08e06c8a292e3a457 (patch)
treeeb97165b4d2787e4dff3cff98e67e670b66b478d /Documentation
parent52c47b63412b0946fcf3c04b5e152df41fc7eca5 (diff)
Documentation: Add device tree bindings for Freescale i.MX GPC
The i.MX6 contains a power controller that controls power gating and sequencing for the SoC's power domains. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/devicetree/bindings/power/fsl,imx-gpc.txt59
1 files changed, 59 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/power/fsl,imx-gpc.txt b/Documentation/devicetree/bindings/power/fsl,imx-gpc.txt
new file mode 100644
index 000000000000..65cc0345747d
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/fsl,imx-gpc.txt
@@ -0,0 +1,59 @@
1Freescale i.MX General Power Controller
2=======================================
3
4The i.MX6Q General Power Control (GPC) block contains DVFS load tracking
5counters and Power Gating Control (PGC) for the CPU and PU (GPU/VPU) power
6domains.
7
8Required properties:
9- compatible: Should be "fsl,imx6q-gpc" or "fsl,imx6sl-gpc"
10- reg: should be register base and length as documented in the
11 datasheet
12- interrupts: Should contain GPC interrupt request 1
13- pu-supply: Link to the LDO regulator powering the PU power domain
14- clocks: Clock phandles to devices in the PU power domain that need
15 to be enabled during domain power-up for reset propagation.
16- #power-domain-cells: Should be 1, see below:
17
18The gpc node is a power-controller as documented by the generic power domain
19bindings in Documentation/devicetree/bindings/power/power_domain.txt.
20
21Example:
22
23 gpc: gpc@020dc000 {
24 compatible = "fsl,imx6q-gpc";
25 reg = <0x020dc000 0x4000>;
26 interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>,
27 <0 90 IRQ_TYPE_LEVEL_HIGH>;
28 pu-supply = <&reg_pu>;
29 clocks = <&clks IMX6QDL_CLK_GPU3D_CORE>,
30 <&clks IMX6QDL_CLK_GPU3D_SHADER>,
31 <&clks IMX6QDL_CLK_GPU2D_CORE>,
32 <&clks IMX6QDL_CLK_GPU2D_AXI>,
33 <&clks IMX6QDL_CLK_OPENVG_AXI>,
34 <&clks IMX6QDL_CLK_VPU_AXI>;
35 #power-domain-cells = <1>;
36 };
37
38
39Specifying power domain for IP modules
40======================================
41
42IP cores belonging to a power domain should contain a 'power-domains' property
43that is a phandle pointing to the gpc device node and a DOMAIN_INDEX specifying
44the power domain the device belongs to.
45
46Example of a device that is part of the PU power domain:
47
48 vpu: vpu@02040000 {
49 reg = <0x02040000 0x3c000>;
50 /* ... */
51 power-domains = <&gpc 1>;
52 /* ... */
53 };
54
55The following DOMAIN_INDEX values are valid for i.MX6Q:
56ARM_DOMAIN 0
57PU_DOMAIN 1
58The following additional DOMAIN_INDEX value is valid for i.MX6SL:
59DISPLAY_DOMAIN 2