OSDN Git Service

ARM: dts: imx6sx: Add DISPLAY power domain support
authorLeonard Crestez <leonard.crestez@nxp.com>
Mon, 7 Jan 2019 13:28:48 +0000 (13:28 +0000)
committerShawn Guo <shawnguo@kernel.org>
Mon, 11 Feb 2019 01:22:24 +0000 (09:22 +0800)
This was implemented in the driver but not actually defined and
referenced in dts. This makes it always on.

From reference manual in section "10.4.1.4.1 Power Distribution":

"Display domain - The DISPLAY domain contains GIS, CSI, PXP, LCDIF,
PCIe, DCIC, and LDB. It is supplied by internal regulator."

The current pd_pcie is actually only for PCIE_PHY, the PCIE ip block is
actually inside the DISPLAY domain. Handle this by adding the pcie node
in both power domains.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/imx6sx.dtsi

index 272ff61..ecf3f3e 100644 (file)
                                                clocks = <&clks IMX6SX_CLK_GPU>;
                                        };
 
+                                       pd_disp: power-domain@2 {
+                                               reg = <2>;
+                                               #power-domain-cells = <0>;
+                                               clocks = <&clks IMX6SX_CLK_PXP_AXI>,
+                                                        <&clks IMX6SX_CLK_DISPLAY_AXI>,
+                                                        <&clks IMX6SX_CLK_LCDIF1_PIX>,
+                                                        <&clks IMX6SX_CLK_LCDIF_APB>,
+                                                        <&clks IMX6SX_CLK_LCDIF2_PIX>,
+                                                        <&clks IMX6SX_CLK_CSI>,
+                                                        <&clks IMX6SX_CLK_VADC>;
+                                       };
+
                                        pd_pci: power-domain@3 {
                                                reg = <3>;
                                                #power-domain-cells = <0>;
                                        interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
                                        clocks = <&clks IMX6SX_CLK_PXP_AXI>;
                                        clock-names = "axi";
+                                       power-domains = <&pd_disp>;
                                        status = "disabled";
                                };
 
                                                 <&clks IMX6SX_CLK_LCDIF_APB>,
                                                 <&clks IMX6SX_CLK_DISPLAY_AXI>;
                                        clock-names = "pix", "axi", "disp_axi";
+                                       power-domains = <&pd_disp>;
                                        status = "disabled";
                                };
 
                                                 <&clks IMX6SX_CLK_LCDIF_APB>,
                                                 <&clks IMX6SX_CLK_DISPLAY_AXI>;
                                        clock-names = "pix", "axi", "disp_axi";
+                                       power-domains = <&pd_disp>;
                                        status = "disabled";
                                };
 
                                        clocks = <&clks IMX6SX_CLK_VADC>,
                                                 <&clks IMX6SX_CLK_CSI>;
                                        clock-names = "vadc", "csi";
+                                       power-domains = <&pd_disp>;
                                        status = "disabled";
                                };
                        };
                                 <&clks IMX6SX_CLK_PCIE_REF_125M>,
                                 <&clks IMX6SX_CLK_DISPLAY_AXI>;
                        clock-names = "pcie", "pcie_bus", "pcie_phy", "pcie_inbound_axi";
-                       power-domains = <&pd_pci>;
+                       power-domains = <&pd_disp>, <&pd_pci>;
+                       power-domain-names = "pcie", "pcie_phy";
                        status = "disabled";
                };
        };