diff options
author | Clément Léger <[email protected]> | 2021-09-13 10:26:33 +0200 |
---|---|---|
committer | Stephen Boyd <[email protected]> | 2021-10-07 20:47:47 -0700 |
commit | c405f5c15e9f6094f2fa1658e73e56f3058e2122 (patch) | |
tree | a25c19b464c8b5237748b395dc1085ac5d780102 | |
parent | 6880fa6c56601bb8ed59df6c30fd390cc5f6dd8f (diff) |
clk: at91: check pmc node status before registering syscore ops
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 <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Acked-by: Nicolas Ferre <[email protected]>
Reviewed-by: Claudiu Beznea <[email protected]>
Fixes: b3b02eac33ed ("clk: at91: Add sama5d2 suspend/resume")
Signed-off-by: Stephen Boyd <[email protected]>
-rw-r--r-- | drivers/clk/at91/pmc.c | 5 |
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)) |