[linux-next:master 6868/7588] sound/soc/fsl/fsl_rpmsg.c:45:45: sparse: sparse: Using plain integer as NULL pointer
From: kernel test robot <hidden>
Date: 2021-03-26 12:48:58
Also in:
oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 931294922e65a23e1aad6398b9ae02df74044679 commit: b73d9e6225e86492f6a901223a34ecfa7b55c178 [6868/7588] ASoC: fsl_rpmsg: Add CPU DAI driver for audio base on rpmsg config: openrisc-randconfig-s031-20210326 (attached as .config) compiler: or1k-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.3-277-gc089cd2d-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=b73d9e6225e86492f6a901223a34ecfa7b55c178 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout b73d9e6225e86492f6a901223a34ecfa7b55c178 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=openrisc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> sparse warnings: (new ones prefixed by >>)
quoted
sound/soc/fsl/fsl_rpmsg.c:45:45: sparse: sparse: Using plain integer as NULL pointer
sound/soc/fsl/fsl_rpmsg.c:45:56: sparse: sparse: Using plain integer as NULL pointer
vim +45 sound/soc/fsl/fsl_rpmsg.c
39
40 static int fsl_rpmsg_hw_params(struct snd_pcm_substream *substream,
41 struct snd_pcm_hw_params *params,
42 struct snd_soc_dai *dai)
43 {
44 struct fsl_rpmsg *rpmsg = snd_soc_dai_get_drvdata(dai);
> 45 struct clk *p = rpmsg->mclk, *pll = 0, *npll = 0;
46 u64 rate = params_rate(params);
47 int ret = 0;
48
49 /* Get current pll parent */
50 while (p && rpmsg->pll8k && rpmsg->pll11k) {
51 struct clk *pp = clk_get_parent(p);
52
53 if (clk_is_match(pp, rpmsg->pll8k) ||
54 clk_is_match(pp, rpmsg->pll11k)) {
55 pll = pp;
56 break;
57 }
58 p = pp;
59 }
60
61 /* Switch to another pll parent if needed. */
62 if (pll) {
63 npll = (do_div(rate, 8000) ? rpmsg->pll11k : rpmsg->pll8k);
64 if (!clk_is_match(pll, npll)) {
65 ret = clk_set_parent(p, npll);
66 if (ret < 0)
67 dev_warn(dai->dev, "failed to set parent %s: %d\n",
68 __clk_get_name(npll), ret);
69 }
70 }
71
72 if (!(rpmsg->mclk_streams & BIT(substream->stream))) {
73 ret = clk_prepare_enable(rpmsg->mclk);
74 if (ret) {
75 dev_err(dai->dev, "failed to enable mclk: %d\n", ret);
76 return ret;
77 }
78
79 rpmsg->mclk_streams |= BIT(substream->stream);
80 }
81
82 return ret;
83 }
84
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Attachments
- .config.gz [application/gzip] 21606 bytes