Skip to content

Commit

Permalink
powerpc/fsl_soc: Search all global-utilities nodes for rstccr
Browse files Browse the repository at this point in the history
The first global-utilities node might not contain the rstcr
property, so we should search all the nodes

Signed-off-by: Matthew McClintock <msm@freescale.com>
Acked-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
  • Loading branch information
Matthew McClintock authored and Kumar Gala committed Oct 14, 2010
1 parent 92437d4 commit 4ea7c88
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions arch/powerpc/sysdev/fsl_soc.c
Original file line number Diff line number Diff line change
Expand Up @@ -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))) {
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)

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_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;
}

Expand Down

0 comments on commit 4ea7c88

Please sign in to comment.