Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux...
[linux/fpc-iii.git] / Documentation / devicetree / bindings / power / fsl,imx-gpc.txt
blob65cc0345747d73f540d6c5a4e8b18acc1618953b
1 Freescale i.MX General Power Controller
2 =======================================
4 The i.MX6Q General Power Control (GPC) block contains DVFS load tracking
5 counters and Power Gating Control (PGC) for the CPU and PU (GPU/VPU) power
6 domains.
8 Required 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:
18 The gpc node is a power-controller as documented by the generic power domain
19 bindings in Documentation/devicetree/bindings/power/power_domain.txt.
21 Example:
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         };
39 Specifying power domain for IP modules
40 ======================================
42 IP cores belonging to a power domain should contain a 'power-domains' property
43 that is a phandle pointing to the gpc device node and a DOMAIN_INDEX specifying
44 the power domain the device belongs to.
46 Example of a device that is part of the PU power domain:
48         vpu: vpu@02040000 {
49                 reg = <0x02040000 0x3c000>;
50                 /* ... */
51                 power-domains = <&gpc 1>;
52                 /* ... */
53         };
55 The following DOMAIN_INDEX values are valid for i.MX6Q:
56 ARM_DOMAIN     0
57 PU_DOMAIN      1
58 The following additional DOMAIN_INDEX value is valid for i.MX6SL:
59 DISPLAY_DOMAIN 2