Patch "clk: bcm2835: Make peripheral PLLC critical" has been added to the 5.19-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: bcm2835: Make peripheral PLLC critical

to the 5.19-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-bcm2835-make-peripheral-pllc-critical.patch
and it can be found in the queue-5.19 subdirectory.

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



commit b54e848c686071f107ec85f12ca30a634b02bbb5
Author: Maxime Ripard <maxime@xxxxxxxxxx>
Date:   Mon Sep 26 10:45:09 2022 +0200

    clk: bcm2835: Make peripheral PLLC critical
    
    [ Upstream commit 6c5422851d8be8c7451e968fd2e6da41b6109e17 ]
    
    When testing for a series affecting the VEC, it was discovered that
    turning off and on the VEC clock is crashing the system.
    
    It turns out that, when disabling the VEC clock, it's the only child of
    the PLLC-per clock which will also get disabled. The source of the crash
    is PLLC-per being disabled.
    
    It's likely that some other device might not take a clock reference that
    it actually needs, but it's unclear which at this point. Let's make
    PLLC-per critical so that we don't have that crash.
    
    Reported-by: Noralf Trønnes <noralf@xxxxxxxxxxx>
    Signed-off-by: Maxime Ripard <maxime@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220926084509.12233-1-maxime@xxxxxxxxxx
    Reviewed-by: Stefan Wahren <stefan.wahren@xxxxxxxx>
    Acked-by: Noralf Trønnes <noralf@xxxxxxxxxxx>
    Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
index 9e9f8b242958..f1102b4c7e88 100644
--- a/drivers/clk/bcm/clk-bcm2835.c
+++ b/drivers/clk/bcm/clk-bcm2835.c
@@ -1784,7 +1784,7 @@ static const struct bcm2835_clk_desc clk_desc_array[] = {
 		.load_mask = CM_PLLC_LOADPER,
 		.hold_mask = CM_PLLC_HOLDPER,
 		.fixed_divider = 1,
-		.flags = CLK_SET_RATE_PARENT),
+		.flags = CLK_IS_CRITICAL | CLK_SET_RATE_PARENT),
 
 	/*
 	 * PLLD is the display PLL, used to drive DSI display panels.



[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