Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ea7c88b authored by Matthew McClintock's avatar Matthew McClintock Committed by Kumar Gala
Browse files

powerpc/fsl_soc: Search all global-utilities nodes for rstccr



The first global-utilities node might not contain the rstcr
property, so we should search all the nodes

Signed-off-by: default avatarMatthew McClintock <msm@freescale.com>
Acked-by: default avatarTimur Tabi <timur@freescale.com>
Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent 92437d41
Loading
Loading
Loading
Loading
+13 −7
Original line number Diff line number Diff line
@@ -378,17 +378,23 @@ static __be32 __iomem *rstcr;
static int __init setup_rstcr(void)
{
	struct device_node *np;
	np = of_find_node_by_name(NULL, "global-utilities");
	if ((np && of_get_property(np, "fsl,has-rstcr", NULL))) {

	for_each_node_by_name(np, "global-utilities") {
		if ((of_get_property(np, "fsl,has-rstcr", NULL))) {
			rstcr = of_iomap(np, 0) + 0xb0;
			if (!rstcr)
			printk (KERN_EMERG "Error: reset control register "
					"not mapped!\n");
	} else if (ppc_md.restart == fsl_rstcr_restart)
				printk (KERN_ERR "Error: reset control "
						"register not mapped!\n");
			break;
		}
	}

	if (!rstcr && ppc_md.restart == fsl_rstcr_restart)
		printk(KERN_ERR "No RSTCR register, warm reboot won't work\n");

	if (np)
		of_node_put(np);

	return 0;
}