summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Léger <clement.leger@bootlin.com>2021-09-13 11:26:33 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-11-18 21:16:51 +0300
commit62a1c92858c13e88ae1c1090bcdb00437c02c1a4 (patch)
treef368a0e4c67aef83f02598a0ef4113d8a7b2ea5a
parent383008a0e009e5da274aa6d9d173e93403d080b0 (diff)
downloadlinux-62a1c92858c13e88ae1c1090bcdb00437c02c1a4.tar.xz
clk: at91: check pmc node status before registering syscore ops
[ Upstream commit c405f5c15e9f6094f2fa1658e73e56f3058e2122 ] Currently, at91 pmc driver always register the syscore_ops whatever the status of the pmc node that has been found. When set as secure and disabled, the pmc should not be accessed or this will generate abort exceptions. To avoid this, add a check on node availability before registering the syscore operations. Signed-off-by: Clément Léger <clement.leger@bootlin.com> Link: https://lore.kernel.org/r/20210913082633.110168-1-clement.leger@bootlin.com Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com> Fixes: b3b02eac33ed ("clk: at91: Add sama5d2 suspend/resume") Signed-off-by: Stephen Boyd <sboyd@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/clk/at91/pmc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/clk/at91/pmc.c b/drivers/clk/at91/pmc.c
index 20ee9dccee78..b40035b011d0 100644
--- a/drivers/clk/at91/pmc.c
+++ b/drivers/clk/at91/pmc.c
@@ -267,6 +267,11 @@ static int __init pmc_register_ops(void)
if (!np)
return -ENODEV;
+ if (!of_device_is_available(np)) {
+ of_node_put(np);
+ return -ENODEV;
+ }
+
pmcreg = device_node_to_regmap(np);
of_node_put(np);
if (IS_ERR(pmcreg))