[PATCH 1/1] Revert "mediatek: fix uart clocks in MT7987 infracfg clock driver"

Christian Marangi (Ansuel) ansuelsmth at gmail.com
Tue Nov 25 02:07:36 PST 2025


Il giorno mar 25 nov 2025 alle ore 11:02 Chukun Pan
<amadeus at jmu.edu.cn> ha scritto:
>
> This reverts commit 1c3b32c45a25a6b80b9b1541a5ec4ce082939e5e.
> This patch causes the kernel to hang after the following log:
> [    1.575050] clk: Disabling unused clocks
>
> Fixes: 1c3b32c ("mediatek: fix uart clocks in MT7987 infracfg clock driver")
>
> Reported-By: Chen Minqiang <ptpt52 at gmail.com>
> Signed-off-by: Chukun Pan <amadeus at jmu.edu.cn>

If the problem happen in disabling unused clock then either flag the
clock as critical
or use assigned-clock binding to fix this.

I feel for clock we should invest more time to find the proper
solution than going
for the quick one.

> ---
>  .../361-clk-mediatek-add-mt7987-clock-drivers-support.patch  | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/target/linux/mediatek/patches-6.12/361-clk-mediatek-add-mt7987-clock-drivers-support.patch b/target/linux/mediatek/patches-6.12/361-clk-mediatek-add-mt7987-clock-drivers-support.patch
> index 249e239086..577b2b7dfc 100644
> --- a/target/linux/mediatek/patches-6.12/361-clk-mediatek-add-mt7987-clock-drivers-support.patch
> +++ b/target/linux/mediatek/patches-6.12/361-clk-mediatek-add-mt7987-clock-drivers-support.patch
> @@ -273,7 +273,7 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
>  +MODULE_LICENSE("GPL");
>  --- /dev/null
>  +++ b/drivers/clk/mediatek/clk-mt7987-infracfg.c
> -@@ -0,0 +1,325 @@
> +@@ -0,0 +1,328 @@
>  +// SPDX-License-Identifier: GPL-2.0
>  +/*
>  + * Copyright (c) 2024 MediaTek Inc.
> @@ -301,12 +301,15 @@ Signed-off-by: Daniel Golle <daniel at makrotopia.org>
>  +static DEFINE_SPINLOCK(mt7987_clk_lock);
>  +
>  +static const char *const infra_mux_uart0_parents[] = { "csw_infra_f26m_sel",
> ++                                                     "infra_hf_66m_uart0_pck",
>  +                                                     "uart_sel" };
>  +
>  +static const char *const infra_mux_uart1_parents[] = { "csw_infra_f26m_sel",
> ++                                                     "infra_hf_66m_uart1_pck",
>  +                                                     "uart_sel" };
>  +
>  +static const char *const infra_mux_uart2_parents[] = { "csw_infra_f26m_sel",
> ++                                                     "infra_hf_66m_uart1_pck",
>  +                                                     "uart_sel" };
>  +
>  +static const char *const infra_mux_spi0_parents[] = {
> --
> 2.25.1
>
>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list