Message ID | 20210913082633.110168-1-clement.leger@bootlin.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | clk: at91: check pmc node status before registering syscore ops | expand |
On 13/09/2021 at 10:26, Clément Léger wrote: > 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> Yes, indeed, Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Thanks, best regards, Nicolas > --- > drivers/clk/at91/pmc.c | 5 +++++ > 1 file changed, 5 insertions(+) > > 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)) > -- > 2.33.0 >
On 13.09.2021 11:26, Clément Léger wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > 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> Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com> > --- > drivers/clk/at91/pmc.c | 5 +++++ > 1 file changed, 5 insertions(+) > > 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)) > -- > 2.33.0 >
Quoting Clement Leger (2021-09-13 01:26:33) > 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: Clement Leger <clement.leger@bootlin.com> Any Fixes tag?
Le Tue, 14 Sep 2021 15:03:01 -0700, Stephen Boyd <sboyd@kernel.org> a écrit : > Quoting Clement Leger (2021-09-13 01:26:33) > > 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: Clement Leger <clement.leger@bootlin.com> > > Any Fixes tag? Since this was present from the start of the implementation, I think it should be the following: Fixes: b3b02eac33ed ("clk: at91: Add sama5d2 suspend/resume")
Quoting Clément Léger (2021-09-13 01:26:33) > 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> > --- Applied to clk-next
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))
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> --- drivers/clk/at91/pmc.c | 5 +++++ 1 file changed, 5 insertions(+)