mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 05:06:43 +00:00
Revert "linux: update to 6.6.39"
This reverts commit 418963b2ef47e250ff7167521acc326aed2eb991.
This commit is contained in:
parent
90191e97ed
commit
24fb4e82b1
@ -29,8 +29,8 @@ case "${LINUX}" in
|
|||||||
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
PKG_VERSION="6.6.39"
|
PKG_VERSION="6.6.30"
|
||||||
PKG_SHA256="2783d42112095f95c510e1b421f056df8cbfa845f9040c6115080434a77a776b"
|
PKG_SHA256="b66a5b863b0f8669448b74ca83bd641a856f164b29956e539bbcb5fdeeab9cc6"
|
||||||
PKG_URL="https://www.kernel.org/pub/linux/kernel/v${PKG_VERSION/.*/}.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
PKG_URL="https://www.kernel.org/pub/linux/kernel/v${PKG_VERSION/.*/}.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||||
PKG_PATCH_DIRS="default"
|
PKG_PATCH_DIRS="default"
|
||||||
;;
|
;;
|
||||||
|
@ -0,0 +1,66 @@
|
|||||||
|
From edfe1a6c99aff85e97dc1600355a66bbcb417531 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jernej Skrabec <jernej.skrabec@gmail.com>
|
||||||
|
Date: Thu, 12 Oct 2023 20:25:42 +0200
|
||||||
|
Subject: [PATCH 22/25] clk: sunxi-ng: h6: Reparent CPUX during PLL CPUX rate
|
||||||
|
change
|
||||||
|
|
||||||
|
While PLL CPUX clock rate change when CPU is running from it works in
|
||||||
|
vast majority of cases, now and then it causes instability. This leads
|
||||||
|
to system crashes and other undefined behaviour. After a lot of testing
|
||||||
|
(30+ hours) while also doing a lot of frequency switches, we can't
|
||||||
|
observe any instability issues anymore when doing reparenting to stable
|
||||||
|
clock like 24 MHz oscillator.
|
||||||
|
|
||||||
|
Fixes: 524353ea480b ("clk: sunxi-ng: add support for the Allwinner H6 CCU")
|
||||||
|
Link: https://forum.libreelec.tv/thread/27295-orange-pi-3-lts-freezes/
|
||||||
|
Reported-by: Chad Wagner <wagnerch42@gmail.com>
|
||||||
|
Tested-by: Chad Wagner <wagnerch42@gmail.com>
|
||||||
|
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
|
||||||
|
---
|
||||||
|
drivers/clk/sunxi-ng/ccu-sun50i-h6.c | 19 +++++++++++++++++--
|
||||||
|
1 file changed, 17 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/drivers/clk/sunxi-ng/ccu-sun50i-h6.c b/drivers/clk/sunxi-ng/ccu-sun50i-h6.c
|
||||||
|
index 42568c616181..892df807275c 100644
|
||||||
|
--- a/drivers/clk/sunxi-ng/ccu-sun50i-h6.c
|
||||||
|
+++ b/drivers/clk/sunxi-ng/ccu-sun50i-h6.c
|
||||||
|
@@ -1181,11 +1181,18 @@ static const u32 usb2_clk_regs[] = {
|
||||||
|
SUN50I_H6_USB3_CLK_REG,
|
||||||
|
};
|
||||||
|
|
||||||
|
+static struct ccu_mux_nb sun50i_h6_cpu_nb = {
|
||||||
|
+ .common = &cpux_clk.common,
|
||||||
|
+ .cm = &cpux_clk.mux,
|
||||||
|
+ .delay_us = 1,
|
||||||
|
+ .bypass_index = 0, /* index of 24 MHz oscillator */
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
static int sun50i_h6_ccu_probe(struct platform_device *pdev)
|
||||||
|
{
|
||||||
|
void __iomem *reg;
|
||||||
|
+ int i, ret;
|
||||||
|
u32 val;
|
||||||
|
- int i;
|
||||||
|
|
||||||
|
reg = devm_platform_ioremap_resource(pdev, 0);
|
||||||
|
if (IS_ERR(reg))
|
||||||
|
@@ -1252,7 +1259,15 @@ static int sun50i_h6_ccu_probe(struct platform_device *pdev)
|
||||||
|
val |= BIT(24);
|
||||||
|
writel(val, reg + SUN50I_H6_HDMI_CEC_CLK_REG);
|
||||||
|
|
||||||
|
- return devm_sunxi_ccu_probe(&pdev->dev, reg, &sun50i_h6_ccu_desc);
|
||||||
|
+ ret = devm_sunxi_ccu_probe(&pdev->dev, reg, &sun50i_h6_ccu_desc);
|
||||||
|
+ if (ret)
|
||||||
|
+ return ret;
|
||||||
|
+
|
||||||
|
+ /* Reparent CPU during PLL CPUX rate changes */
|
||||||
|
+ ccu_mux_notifier_register(pll_cpux_clk.common.hw.clk,
|
||||||
|
+ &sun50i_h6_cpu_nb);
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static const struct of_device_id sun50i_h6_ccu_ids[] = {
|
||||||
|
--
|
||||||
|
2.42.0
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user