FAILED: patch "[PATCH] clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks" failed to apply to 6.6-stable tree
Subsystems (3)
Sasha Levin
maintainerThe patch below does not apply to the 6.6-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.6.y
git checkout FETCH_HEAD
git cherry-pick -x 1dc3871ce7ec819030c22297f8960c61cc42a990
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '[email protected]' --subject-prefix 'PATCH 6.6.y' 'HEAD^..'
Thanks,
Sasha
------------------ original commit in Linus's tree ------------------
From 1dc3871ce7ec819030c22297f8960c61cc42a990 Mon Sep 17 00:00:00 2001
From: Miquel Raynal <[email protected]>
Date: Wed, 30 Sep 2026 19:24:51 +0200
Subject: [PATCH] clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks
The WDT and WWDT muxes list PCLK3/4096 and PCLK4/4096 among their possible parents, but the driver never registers the corresponding clocks, so these parents could never be used.
Add pclk3_div4096 and pclk4_div4096 as fixed factor children of pclk3 and pclk4 and expose them through the clock provider.
--- drivers/clk/nuvoton/clk-ma35d1.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/clk/nuvoton/clk-ma35d1.c +3 -1
@@ -17,7 +17,7 @@static DEFINE_SPINLOCK (ma35d1_lock);#define PLL_MAX_NUM 5 -#define MA35D1_CLK_COUNT 236 +#define MA35D1_CLK_COUNT 238/* Clock Control Registers Offset */ #define REG_CLK_PWRCTL 0x00
@@ -544,6 +544,8 @@ static int ma35d1_clocks_probe(struct platform_device *pdev) hws[HCLK3 ] =ma35d1_clk_fixed_factor (dev,"hclk3" ,"sysclk1_mux" ,1 ,2 ); hws[PCLK3 ] =ma35d1_clk_fixed_factor (dev,"pclk3" ,"sysclk1_mux" ,1 ,2 ); hws[PCLK4 ] =ma35d1_clk_fixed_factor (dev,"pclk4" ,"sysclk1_mux" ,1 ,2 ); + hws[PCLK3_DIV4096 ] =ma35d1_clk_fixed_factor (dev,"pclk3_div4096" ,"pclk3" ,1 ,4096 ); + hws[PCLK4_DIV4096 ] =ma35d1_clk_fixed_factor (dev,"pclk4_div4096" ,"pclk4" ,1 ,4096 ); hws[USBPHY0 ] =ma35d1_clk_fixed ("usbphy0" ,480000000 ); hws[USBPHY1 ] =ma35d1_clk_fixed ("usbphy1" ,480000000 );
Signature · 1 line
2.53.0
Sasha Levin
maintainerPATCH 1/4 clk: nuvoton: ma35d1: Keep the clock count in the driver
From: Miquel Raynal <[email protected]>
[ Upstream commit 26ec588063d9b6c70773b8729372e2bf6d3ea95a ]
The number of clocks is not a binding since this is a value that can change. As such, in order to support the missing watchdog clocks and allow the deprecation and removal of CLK_MAX_IDX from the bindings, we need to switch to a local definition first.
Stable-dep-of: 1dc3871ce7ec ("clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks")
--- drivers/clk/nuvoton/clk-ma35d1.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/clk/nuvoton/clk-ma35d1.c +3 -2
@@ -17,6 +17,7 @@static DEFINE_SPINLOCK (ma35d1_lock);#define PLL_MAX_NUM 5 +#define MA35D1_CLK_COUNT 236/* Clock Control Registers Offset */ #define REG_CLK_PWRCTL 0x00
@@ -467,12 +468,12 @@ static int ma35d1_clocks_probe(struct platform_device *pdev)int ret; ma35d1_hw_data =devm_kzalloc (dev, -struct_size (ma35d1_hw_data, hws,CLK_MAX_IDX ), +struct_size (ma35d1_hw_data, hws,MA35D1_CLK_COUNT ),GFP_KERNEL );if (!ma35d1_hw_data)return -ENOMEM ; - ma35d1_hw_data->num =CLK_MAX_IDX ; + ma35d1_hw_data->num =MA35D1_CLK_COUNT ; hws = ma35d1_hw_data->hws; clk_base =devm_platform_ioremap_resource (pdev,0 );
Signature · 1 line
2.53.0
Sasha Levin
maintainerPATCH 2/4 dt-bindings: clock: ma35d1: Drop CLK_MAX_IDX define
From: Miquel Raynal <[email protected]>
[ Upstream commit 653738db38c7c7f0fb959a7870f9461cf4987825 ]
Drop CLK_MAX_IDX define of MA35D1 include. This is not a binding and should not be placed here. Value is defined in the user driver.
Stable-dep-of: 1dc3871ce7ec ("clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks")
--- include/dt-bindings/clock/nuvoton,ma35d1-clk.h | 1 - 1 file changed, 1 deletion(-)
include/dt-bindings/clock/nuvoton,ma35d1-clk.h +0 -1
@@ -248,6 +248,5 @@#define ADC_GATE 233#define EADC_DIV 234#define EADC_GATE 235 -#define CLK_MAX_IDX 236#endif /* __DT_BINDINGS_CLOCK_NUVOTON_MA35D1_CLK_H */
Signature · 1 line
2.53.0
Sasha Levin
maintainerPATCH 3/4 dt-bindings: clock: ma35d1: Add missing WDT/WWDT parent clocks
In reply to Sasha LevinFrom: Miquel Raynal <[email protected]>
[ Upstream commit 8c7453cb0b01bee47ec2f902a9ac1872d3b77f3d ]
The WDT and WWDT muxes have PCLK3/4096 and PCLK4/4096 among their possible parents, but these fixed factor clocks are currently not defined, even though they are needed to properly describe the clock tree. Add them to the bindings.
Stable-dep-of: 1dc3871ce7ec ("clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks")
--- include/dt-bindings/clock/nuvoton,ma35d1-clk.h | 2 ++ 1 file changed, 2 insertions(+)
include/dt-bindings/clock/nuvoton,ma35d1-clk.h +2 -0
@@ -248,5 +248,7 @@#define ADC_GATE 233#define EADC_DIV 234#define EADC_GATE 235 +#define PCLK3_DIV4096 236 +#define PCLK4_DIV4096 237#endif /* __DT_BINDINGS_CLOCK_NUVOTON_MA35D1_CLK_H */
Signature · 1 line
2.53.0
Sasha Levin
maintainerPATCH 4/4 clk: nuvoton: ma35d1: Add missing WDT/WWDT parent clocks
In reply to Sasha LevinFrom: Miquel Raynal <[email protected]>
[ Upstream commit 1dc3871ce7ec819030c22297f8960c61cc42a990 ]
The WDT and WWDT muxes list PCLK3/4096 and PCLK4/4096 among their possible parents, but the driver never registers the corresponding clocks, so these parents could never be used.
Add pclk3_div4096 and pclk4_div4096 as fixed factor children of pclk3 and pclk4 and expose them through the clock provider.
--- drivers/clk/nuvoton/clk-ma35d1.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/clk/nuvoton/clk-ma35d1.c +3 -1
@@ -17,7 +17,7 @@static DEFINE_SPINLOCK (ma35d1_lock);#define PLL_MAX_NUM 5 -#define MA35D1_CLK_COUNT 236 +#define MA35D1_CLK_COUNT 238/* Clock Control Registers Offset */ #define REG_CLK_PWRCTL 0x00
@@ -544,6 +544,8 @@ static int ma35d1_clocks_probe(struct platform_device *pdev) hws[HCLK3 ] =ma35d1_clk_fixed_factor (dev,"hclk3" ,"sysclk1_mux" ,1 ,2 ); hws[PCLK3 ] =ma35d1_clk_fixed_factor (dev,"pclk3" ,"sysclk1_mux" ,1 ,2 ); hws[PCLK4 ] =ma35d1_clk_fixed_factor (dev,"pclk4" ,"sysclk1_mux" ,1 ,2 ); + hws[PCLK3_DIV4096 ] =ma35d1_clk_fixed_factor (dev,"pclk3_div4096" ,"pclk3" ,1 ,4096 ); + hws[PCLK4_DIV4096 ] =ma35d1_clk_fixed_factor (dev,"pclk4_div4096" ,"pclk4" ,1 ,4096 ); hws[USBPHY0 ] =ma35d1_clk_fixed ("usbphy0" ,480000000 ); hws[USBPHY1 ] =ma35d1_clk_fixed ("usbphy1" ,480000000 );
Signature · 1 line
2.53.0