soc: imx: gpcv2: allow to disable individual power domains
authorLucas Stach <l.stach@pengutronix.de>
Sat, 2 Oct 2021 12:48:52 +0000 (14:48 +0200)
committerShawn Guo <shawnguo@kernel.org>
Tue, 5 Oct 2021 06:27:52 +0000 (14:27 +0800)
Some board designs don't supply power to all of the power domains,
as they are not used anyways. In that case we must make sure to
not touch those power domains at all, as trying to power up a
domain that has no power supplied to it will obviously end in a
system crash. Allow to disable those domains via the standard DT
status property.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-By: Tim Harvey <tharvey@gateworks.com>
Tested-By: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
drivers/soc/imx/gpcv2.c

index 46aac23..39a581f 100644 (file)
@@ -990,6 +990,9 @@ static int imx_gpcv2_probe(struct platform_device *pdev)
                struct imx_pgc_domain *domain;
                u32 domain_index;
 
+               if (!of_device_is_available(np))
+                       continue;
+
                ret = of_property_read_u32(np, "reg", &domain_index);
                if (ret) {
                        dev_err(dev, "Failed to read 'reg' property\n");