* [PATCH 1/2] phy: freescale: fsl-samsung-hdmi: Make sure clk_init_data is fully initialized
2026-08-21 10:08 [PATCH 0/2] phy: Make sure clk_init_data is fully initialized Geert Uytterhoeven
@ 2026-08-21 10:08 ` Geert Uytterhoeven
2026-08-21 10:08 ` [PATCH 2/2] phy: rockchip: " Geert Uytterhoeven
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2026-08-21 10:08 UTC (permalink / raw)
To: Vinod Koul, Neil Armstrong, Manivannan Sadhasivam, Heiko Stuebner
Cc: linux-phy, linux-arm-kernel, linux-rockchip, linux-clk,
Geert Uytterhoeven
The clk_init_data structure contains several mutually-exclusive members
for different methods to specify the possible parents of a clock,
prompting drivers to initialize only the members they need. However,
not initializing all members may cause subtle issues, which are only
exposed when CONFIG_INIT_STACK_ALL_PATTERN or CONFIG_INIT_STACK_NONE is
enabled.
Make sure all members are fully initialized, to avoid such bugs, and to
prevent future breakage when converting drivers to a different method
for specifying the parents.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Compile-tested only.
---
drivers/phy/freescale/phy-fsl-samsung-hdmi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/phy/freescale/phy-fsl-samsung-hdmi.c b/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
index 0f25d81de61bb67f..ded142020e725f58 100644
--- a/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
+++ b/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
@@ -610,7 +610,7 @@ static int phy_clk_register(struct fsl_samsung_hdmi_phy *phy)
{
struct device *dev = phy->dev;
struct device_node *np = dev->of_node;
- struct clk_init_data init;
+ struct clk_init_data init = {};
const char *parent_name;
struct clk *phyclk;
int ret;
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH 2/2] phy: rockchip: Make sure clk_init_data is fully initialized
2026-08-21 10:08 [PATCH 0/2] phy: Make sure clk_init_data is fully initialized Geert Uytterhoeven
2026-08-21 10:08 ` [PATCH 1/2] phy: freescale: fsl-samsung-hdmi: " Geert Uytterhoeven
@ 2026-08-21 10:08 ` Geert Uytterhoeven
2026-08-27 13:33 ` Heiko Stuebner
2026-08-24 15:23 ` [PATCH 0/2] phy: " Brian Masney
2026-10-03 15:25 ` Vinod Koul
3 siblings, 1 reply; 6+ messages in thread
From: Geert Uytterhoeven @ 2026-08-21 10:08 UTC (permalink / raw)
To: Vinod Koul, Neil Armstrong, Manivannan Sadhasivam, Heiko Stuebner
Cc: linux-phy, linux-arm-kernel, linux-rockchip, linux-clk,
Geert Uytterhoeven
The clk_init_data structure contains several mutually-exclusive members
for different methods to specify the possible parents of a clock,
prompting drivers to initialize only the members they need. However,
not initializing all members may cause subtle issues, which are only
exposed when CONFIG_INIT_STACK_ALL_PATTERN or CONFIG_INIT_STACK_NONE is
enabled.
Make sure all members are fully initialized, to avoid such bugs, and to
prevent future breakage when converting drivers to a different method
for specifying the parents.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Compile-tested only.
---
drivers/phy/rockchip/phy-rockchip-inno-hdmi.c | 2 +-
drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 2 +-
drivers/phy/rockchip/phy-rockchip-usb.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c b/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
index c3d257a0f4a65b4c..d2c2b17df5f340e4 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
@@ -1044,7 +1044,7 @@ static int inno_hdmi_phy_clk_register(struct inno_hdmi_phy *inno)
{
struct device *dev = inno->dev;
struct device_node *np = dev->of_node;
- struct clk_init_data init;
+ struct clk_init_data init = {};
const char *parent_name;
int ret;
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
index 7d8a533f24aeadc2..e47b89015586feee 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -400,7 +400,7 @@ static int
rockchip_usb2phy_clk480m_register(struct rockchip_usb2phy *rphy)
{
struct device_node *node = rphy->dev->of_node;
- struct clk_init_data init;
+ struct clk_init_data init = {};
struct clk *refclk = NULL;
const char *clk_name;
int i;
diff --git a/drivers/phy/rockchip/phy-rockchip-usb.c b/drivers/phy/rockchip/phy-rockchip-usb.c
index cef96739cf3ff41f..c5a2853a63d3099c 100644
--- a/drivers/phy/rockchip/phy-rockchip-usb.c
+++ b/drivers/phy/rockchip/phy-rockchip-usb.c
@@ -200,9 +200,9 @@ static int rockchip_usb_phy_init(struct rockchip_usb_phy_base *base,
struct device_node *child)
{
struct rockchip_usb_phy *rk_phy;
+ struct clk_init_data init = {};
unsigned int reg_offset;
const char *clk_name;
- struct clk_init_data init;
int err, i;
rk_phy = devm_kzalloc(base->dev, sizeof(*rk_phy), GFP_KERNEL);
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH 2/2] phy: rockchip: Make sure clk_init_data is fully initialized
2026-08-21 10:08 ` [PATCH 2/2] phy: rockchip: " Geert Uytterhoeven
@ 2026-08-27 13:33 ` Heiko Stuebner
0 siblings, 0 replies; 6+ messages in thread
From: Heiko Stuebner @ 2026-08-27 13:33 UTC (permalink / raw)
To: Vinod Koul, Neil Armstrong, Manivannan Sadhasivam,
Geert Uytterhoeven
Cc: linux-phy, linux-arm-kernel, linux-rockchip, linux-clk,
Geert Uytterhoeven
Am Freitag, 21. August 2026, 12:08:40 Mitteleuropäische Sommerzeit schrieb Geert Uytterhoeven:
> The clk_init_data structure contains several mutually-exclusive members
> for different methods to specify the possible parents of a clock,
> prompting drivers to initialize only the members they need. However,
> not initializing all members may cause subtle issues, which are only
> exposed when CONFIG_INIT_STACK_ALL_PATTERN or CONFIG_INIT_STACK_NONE is
> enabled.
>
> Make sure all members are fully initialized, to avoid such bugs, and to
> prevent future breakage when converting drivers to a different method
> for specifying the parents.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] phy: Make sure clk_init_data is fully initialized
2026-08-21 10:08 [PATCH 0/2] phy: Make sure clk_init_data is fully initialized Geert Uytterhoeven
2026-08-21 10:08 ` [PATCH 1/2] phy: freescale: fsl-samsung-hdmi: " Geert Uytterhoeven
2026-08-21 10:08 ` [PATCH 2/2] phy: rockchip: " Geert Uytterhoeven
@ 2026-08-24 15:23 ` Brian Masney
2026-10-03 15:25 ` Vinod Koul
3 siblings, 0 replies; 6+ messages in thread
From: Brian Masney @ 2026-08-24 15:23 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Vinod Koul, Neil Armstrong, Manivannan Sadhasivam, Heiko Stuebner,
linux-phy, linux-arm-kernel, linux-rockchip, linux-clk
On Fri, Aug 21, 2026 at 12:08:38PM +0200, Geert Uytterhoeven wrote:
> Hi all,
>
> The clk_init_data structure contains several mutually-exclusive members
> for different methods to specify the possible parents of a clock,
> prompting drivers to initialize only the members they need. However,
> not initializing all members may cause subtle issues, which are only
> exposed when CONFIG_INIT_STACK_ALL_PATTERN or CONFIG_INIT_STACK_NONE is
> enabled.
>
> Hence this series aims to make sure all members are fully initialized,
> to avoid such bugs, and to prevent future breakage when converting
> drivers to a different method for specifying the parents.
>
> Part One[1] fixed all cases that I identified to be real bugs, in
> response to a crash I saw on BeagleBone Black.
>
> This series is the PHY subpart of Part Two, which fixes remaining cases
> that are currently harmless. These are still fragile, and may cause
> future breakage when converting drivers to a different method for
> specifying the parents.
>
> Thanks for your comments!
>
> [1] "[PATCH treewide 0/5] clk: Make sure clk_init_data is fully
> initialized (part 1)"
> https://lore.kernel.org/cover.1787165329.git.geert+renesas@glider.be
For the series:
Reviewed-by: Brian Masney <bmasney@redhat.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] phy: Make sure clk_init_data is fully initialized
2026-08-21 10:08 [PATCH 0/2] phy: Make sure clk_init_data is fully initialized Geert Uytterhoeven
` (2 preceding siblings ...)
2026-08-24 15:23 ` [PATCH 0/2] phy: " Brian Masney
@ 2026-10-03 15:25 ` Vinod Koul
3 siblings, 0 replies; 6+ messages in thread
From: Vinod Koul @ 2026-10-03 15:25 UTC (permalink / raw)
To: Neil Armstrong, Manivannan Sadhasivam, Heiko Stuebner,
Geert Uytterhoeven
Cc: linux-phy, linux-arm-kernel, linux-rockchip, linux-clk
On Fri, 21 Aug 2026 12:08:38 +0200, Geert Uytterhoeven wrote:
> Hi all,
>
> The clk_init_data structure contains several mutually-exclusive members
> for different methods to specify the possible parents of a clock,
> prompting drivers to initialize only the members they need. However,
> not initializing all members may cause subtle issues, which are only
> exposed when CONFIG_INIT_STACK_ALL_PATTERN or CONFIG_INIT_STACK_NONE is
> enabled.
>
> [...]
Applied, thanks!
[1/2] phy: freescale: fsl-samsung-hdmi: Make sure clk_init_data is fully initialized
commit: fdc340bfc7ab60c4cbdb198c9972114b51d7caa3
[2/2] phy: rockchip: Make sure clk_init_data is fully initialized
commit: 91967098fd985237ba0deff97809ab52d3e51fba
Best regards,
--
~Vinod
^ permalink raw reply [flat|nested] 6+ messages in thread