Patch "clk: at91: check pmc node status before registering syscore ops" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    clk: at91: check pmc node status before registering syscore ops

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     clk-at91-check-pmc-node-status-before-registering-sy.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 71dc51aae419f6524af1070a4a85f1d7292ff6db
Author: Clément Léger <clement.leger@xxxxxxxxxxx>
Date:   Mon Sep 13 10:26:33 2021 +0200

    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@xxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20210913082633.110168-1-clement.leger@xxxxxxxxxxx
    Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
    Reviewed-by: Claudiu Beznea <claudiu.beznea@xxxxxxxxxxxxx>
    Fixes: b3b02eac33ed ("clk: at91: Add sama5d2 suspend/resume")
    Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/clk/at91/pmc.c b/drivers/clk/at91/pmc.c
index 20ee9dccee787..b40035b011d0a 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))



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux