Hi Saravana,
On Mon, Feb 15, 2021 at 10:57 PM Saravana Kannan [off-list ref] wrote:
quoted hunk ↗ jump to hunk
On Mon, Feb 15, 2021 at 7:16 AM Geert Uytterhoeven [off-list ref] wrote:
quoted
On Fri, Feb 12, 2021 at 4:00 AM Saravana Kannan [off-list ref] wrote:
quoted
On Thu, Feb 11, 2021 at 5:00 AM Geert Uytterhoeven [off-list ref] wrote:
quoted
1. R-Car Gen2 (Koelsch), R-Car Gen3 (Salvator-X(S), Ebisu).
- Commit 2dfc564bda4a31bc ("soc: renesas: rcar-sysc: Mark device
node OF_POPULATED after init") is no longer needed (but already
queued for v5.12 anyway)
Rob doesn't like the proliferation of OF_POPULATED and we don't need
it anymore, so maybe work it out with him? It's a balance between some
wasted memory (struct device(s)) vs not proliferating OF_POPULATED.
quoted
quoted
2. SH/R-Mobile AG5 (kzm9g), APE6 (ape6evm), A1 (armadillo800-eva)
- "PATCH] soc: renesas: rmobile-sysc: Set OF_POPULATED and absorb
reset handling" is no longer needed
https://lore.kernel.org/linux-arm-kernel/20210205133319.1921108-1-geert+renesas@glider.be/ (local)
Good to see more evidence that this series is fixing things at a more
generic level.
I spoke too soon: if CONFIG_POWER_RESET_RMOBILE=n,
booting fails again, as everything is waiting on the system controller,
which never becomes available.
Rcar-sysc doesn't suffer from this problem, cfr. above.
Perhaps because the rmobile-sysc bindings use a hierarchical instead
of a linear PM domain description, and thus consumers point to the
children of the system controller node?
Cfr. system-controller@e6180000 in arch/arm/boot/dts/r8a7740.dtsi.
Ok, I see what's going on. The problem is that the "power domain"
fwnode being registered is not the node that contains the "compatible"
property and becomes a device. So this patch[1] is not helping here.
Fix is to do something like this (to avoid using OF_POPULATED flag and
breaking reset):
diff --git a/drivers/soc/renesas/rmobile-sysc.c
b/drivers/soc/renesas/rmobile-sysc.c
index 9046b8c933cb..b7e66139ef7d 100644
--- a/drivers/soc/renesas/rmobile-sysc.c
+++ b/drivers/soc/renesas/rmobile-sysc.c
@@ -344,6 +344,7 @@ static int __init rmobile_init_pm_domains(void)
of_node_put(np);
break;
}
+ fwnode_dev_initialized(&np->fwnode, true);
}
put_special_pds();
Can you give it a shot?
Thanks, works. Patch sent
"[PATCH v2] soc: renesas: rmobile-sysc: Mark fwnode when PM domain is added"
https://lore.kernel.org/linux-arm-kernel/20210216123958.3180014-1-geert+renesas@glider.be/ (local)
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds