[bug report] ASoC: rsnd: adg: clearly handle clock error / NULL case

Dan Carpenter dan.carpenter at oracle.com
Tue Aug 24 11:29:32 CEST 2021


Hello Kuninori Morimoto,

The patch cc64c390b215: "ASoC: rsnd: adg: clearly handle clock error
/ NULL case" from Aug 20, 2021, leads to the following
Smatch static checker warning:

	sound/soc/sh/rcar/adg.c:396 rsnd_adg_create_null_clk()
	warn: passing zero to 'ERR_CAST'

sound/soc/sh/rcar/adg.c
    386 static struct clk *rsnd_adg_create_null_clk(struct rsnd_priv *priv,
    387 					    const char * const name,
    388 					    const char *parent)
    389 {
    390 	struct device *dev = rsnd_priv_to_dev(priv);
    391 	struct clk *clk;
    392 
    393 	clk = clk_register_fixed_rate(dev, name, parent, 0, 0);
    394 	if (IS_ERR_OR_NULL(clk)) {
    395 		dev_err(dev, "create null clk error\n");

The clk_register_fixed_rate() function doesn't have any documentation,
but generally when functions return a mix of error pointers and NULL
then the NULL case means the feature is deliberately disabled.  So it
should not print an error message.  Perhaps an info message at most.

--> 396 		return ERR_CAST(clk);

No need to cast this.  The types are the same.

    397 	}
    398 
    399 	return clk;
    400 }

regards,
dan carpenter


More information about the Alsa-devel mailing list