mirror of
https://github.com/torvalds/linux.git
synced 2026-09-14 16:10:02 +02:00
spi: amlogic-spisg: Make sure clk_init_data is fully initialized
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.
aml_spisg_clk_init() fills in init.parent_data, and assumes that
init.parent_names is NULL. However, the latter in uninitialized, and
thus may cause a crash.
Make sure all members are fully initialized, to fix such bugs, and to
avoid future breakage when converting drivers to a different method for
specifying the parents.
Fixes: cef9991e04 ("spi: Add Amlogic SPISG driver")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Brian Masney <bmasney@redhat.com>
Reviewed-by: Xianwei Zhao <xianwei.zhao@amlogic.com>
Link: https://patch.msgid.link/9fb35ae0aedb7a6db0db6c78a8193c7602dd9d44.1787165329.git.geert+renesas@glider.be
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
23688febe4
commit
b2702908ee
|
|
@ -636,7 +636,7 @@ static int aml_spisg_target_abort(struct spi_controller *ctlr)
|
|||
static int aml_spisg_clk_init(struct spisg_device *spisg, void __iomem *base)
|
||||
{
|
||||
struct device *dev = &spisg->pdev->dev;
|
||||
struct clk_init_data init;
|
||||
struct clk_init_data init = {};
|
||||
struct clk_divider *div;
|
||||
struct clk_div_table *tbl;
|
||||
char name[32];
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user