Quoting Miquel Raynal (2021-02-18 00:37:15) > Hi Shubhrajyoti, > > Shubhrajyoti Datta <shubhrajyoti.datta@xxxxxxxxxx> wrote on Thu, 18 Feb > 2021 10:19:50 +0530: > > > The number of output clocks are configurable in the hardware. > > Currently the driver registers the maximum number of outputs. > > Fix the same by registering only the outputs that are there. > > > > Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xxxxxxxxxx> > > --- > > v4: > > Assign output in this patch > > > > drivers/clk/clk-xlnx-clock-wizard.c | 6 ++++-- > > 1 file changed, 4 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/clk/clk-xlnx-clock-wizard.c b/drivers/clk/clk-xlnx-clock-wizard.c > > index ed3b0ef..d403a74 100644 > > --- a/drivers/clk/clk-xlnx-clock-wizard.c > > +++ b/drivers/clk/clk-xlnx-clock-wizard.c > > @@ -473,6 +473,7 @@ static int clk_wzrd_probe(struct platform_device *pdev) > > unsigned long rate; > > const char *clk_name; > > struct clk_wzrd *clk_wzrd; > > + int outputs; > > struct device_node *np = pdev->dev.of_node; > > > > clk_wzrd = devm_kzalloc(&pdev->dev, sizeof(*clk_wzrd), GFP_KERNEL); > > @@ -541,6 +542,7 @@ static int clk_wzrd_probe(struct platform_device *pdev) > > goto err_disable_clk; > > } > > > > + outputs = of_property_count_strings(np, "clock-output-names"); > > A check on outputs validity is probably welcome. > > Also I usually prefer noutputs or nb_outputs for such variable name, > which implies a number rather than an array, but this is personal taste. Ideally we get rid of clock-output-names and generate them at runtime instead based on some combination of device name and something else.