public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH] ARM: imx6: gpc: don't register power domain if DT data is missing
@ 2015-05-27  8:10 Lucas Stach
  2015-05-27  8:40 ` Shawn Guo
  0 siblings, 1 reply; 2+ messages in thread
From: Lucas Stach @ 2015-05-27  8:10 UTC (permalink / raw)
  To: linux-arm-kernel

If the devicetree is too old and does not provide the regulator and clocks
for the power domain, we need to avoid registering the power domain.
Otherwise runtime PM will try to control the domain, which will lead to
machine hangs without the proper DT configuration data.

This restores functionality to the kernel 4.0 level if an old DT is
detected, where the power domain is constantly powered on.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 arch/arm/mach-imx/gpc.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/mach-imx/gpc.c b/arch/arm/mach-imx/gpc.c
index bbf015056221..6d0893a3828e 100644
--- a/arch/arm/mach-imx/gpc.c
+++ b/arch/arm/mach-imx/gpc.c
@@ -449,6 +449,10 @@ static int imx_gpc_probe(struct platform_device *pdev)
 	struct regulator *pu_reg;
 	int ret;
 
+	/* bail out if DT too old and doesn't provide the necessary info */
+	if (!of_property_read_bool(pdev->dev.of_node, "#power-domain-cells"))
+		return 0;
+
 	pu_reg = devm_regulator_get_optional(&pdev->dev, "pu");
 	if (PTR_ERR(pu_reg) == -ENODEV)
 		pu_reg = NULL;
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [PATCH] ARM: imx6: gpc: don't register power domain if DT data is missing
  2015-05-27  8:10 [PATCH] ARM: imx6: gpc: don't register power domain if DT data is missing Lucas Stach
@ 2015-05-27  8:40 ` Shawn Guo
  0 siblings, 0 replies; 2+ messages in thread
From: Shawn Guo @ 2015-05-27  8:40 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 27, 2015 at 10:10:26AM +0200, Lucas Stach wrote:
> If the devicetree is too old and does not provide the regulator and clocks
> for the power domain, we need to avoid registering the power domain.
> Otherwise runtime PM will try to control the domain, which will lead to
> machine hangs without the proper DT configuration data.
> 
> This restores functionality to the kernel 4.0 level if an old DT is
> detected, where the power domain is constantly powered on.
> 
> Signed-off-by: Lucas Stach <l.stach@pengutronix.de>

Applied, thanks.

> ---
>  arch/arm/mach-imx/gpc.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/arm/mach-imx/gpc.c b/arch/arm/mach-imx/gpc.c
> index bbf015056221..6d0893a3828e 100644
> --- a/arch/arm/mach-imx/gpc.c
> +++ b/arch/arm/mach-imx/gpc.c
> @@ -449,6 +449,10 @@ static int imx_gpc_probe(struct platform_device *pdev)
>  	struct regulator *pu_reg;
>  	int ret;
>  
> +	/* bail out if DT too old and doesn't provide the necessary info */
> +	if (!of_property_read_bool(pdev->dev.of_node, "#power-domain-cells"))
> +		return 0;
> +
>  	pu_reg = devm_regulator_get_optional(&pdev->dev, "pu");
>  	if (PTR_ERR(pu_reg) == -ENODEV)
>  		pu_reg = NULL;
> -- 
> 2.1.4
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-05-27  8:40 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-27  8:10 [PATCH] ARM: imx6: gpc: don't register power domain if DT data is missing Lucas Stach
2015-05-27  8:40 ` Shawn Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox