All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Chris Morgan <macroalpha82@gmail.com>, alsa-devel@alsa-project.org
Cc: pierre-louis.bossart@linux.intel.com, kbuild-all@lists.01.org,
	heiko@sntech.de, tiwai@suse.com, robh+dt@kernel.org,
	lgirdwood@gmail.com, broonie@kernel.org, jbx6244@gmail.com,
	lee.jones@linaro.org
Subject: Re: [v7 2/4] ASoC: Add Rockchip rk817 audio CODEC support
Date: Wed, 21 Apr 2021 04:34:19 +0800	[thread overview]
Message-ID: <202104210447.nRqqB26g-lkp@intel.com> (raw)
In-Reply-To: <20210420160747.22942-2-macroalpha82@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7603 bytes --]

Hi Chris,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on asoc/for-next]
[also build test ERROR on lee-mfd/for-mfd-next sound/for-next v5.12-rc8 next-20210420]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Chris-Morgan/mfd-Add-Rockchip-rk817-audio-CODEC-support/20210421-000916
base:   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
config: nds32-randconfig-r004-20210420 (attached as .config)
compiler: nds32le-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/438ec6f1ceec6d4d7cde8169bc80110102e6a396
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Chris-Morgan/mfd-Add-Rockchip-rk817-audio-CODEC-support/20210421-000916
        git checkout 438ec6f1ceec6d4d7cde8169bc80110102e6a396
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=nds32 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   sound/soc/codecs/rk817_codec.c: In function 'rk817_probe':
>> sound/soc/codecs/rk817_codec.c:418:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
     418 |  int ret;
         |      ^~~
   In file included from include/linux/bpf.h:19,
                    from include/linux/bpf-cgroup.h:5,
                    from include/linux/cgroup-defs.h:22,
                    from include/linux/cgroup.h:28,
                    from include/linux/memcontrol.h:13,
                    from include/linux/swap.h:9,
                    from include/linux/suspend.h:5,
                    from include/linux/regulator/consumer.h:35,
                    from include/linux/regulator/machine.h:15,
                    from include/linux/mfd/rk808.h:18,
                    from sound/soc/codecs/rk817_codec.c:10:
   sound/soc/codecs/rk817_codec.c: At top level:
>> sound/soc/codecs/rk817_codec.c:546:25: error: 'rk817_codec_dt_ids' undeclared here (not in a function); did you mean 'rk817_codec_priv'?
     546 | MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
         |                         ^~~~~~~~~~~~~~~~~~
   include/linux/module.h:238:15: note: in definition of macro 'MODULE_DEVICE_TABLE'
     238 | extern typeof(name) __mod_##type##__##name##_device_table  \
         |               ^~~~
>> include/linux/module.h:238:21: error: '__mod_of__rk817_codec_dt_ids_device_table' aliased to undefined symbol 'rk817_codec_dt_ids'
     238 | extern typeof(name) __mod_##type##__##name##_device_table  \
         |                     ^~~~~~
   sound/soc/codecs/rk817_codec.c:546:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
     546 | MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
         | ^~~~~~~~~~~~~~~~~~~


vim +546 sound/soc/codecs/rk817_codec.c

   413	
   414	static int rk817_probe(struct snd_soc_component *component)
   415	{
   416		struct rk817_codec_priv *rk817 = snd_soc_component_get_drvdata(component);
   417		struct rk808 *rk808 = dev_get_drvdata(component->dev->parent);
 > 418		int ret;
   419	
   420		snd_soc_component_init_regmap(component, rk808->regmap);
   421		rk817->component = component;
   422	
   423		ret = snd_soc_component_write(component, RK817_CODEC_DTOP_LPT_SRST, 0x40);
   424	
   425		rk817_init(component);
   426	
   427		/* setting initial pll values so that we can continue to leverage simple-audio-card.
   428		 * The values aren't important since no parameters are used.
   429		 */
   430	
   431		snd_soc_component_set_pll(component, 0, 0, 0, 0);
   432	
   433		return 0;
   434	}
   435	
   436	static void rk817_remove(struct snd_soc_component *component)
   437	{
   438		snd_soc_component_exit_regmap(component);
   439	}
   440	
   441	static const struct snd_soc_component_driver soc_codec_dev_rk817 = {
   442		.probe = rk817_probe,
   443		.remove = rk817_remove,
   444		.idle_bias_on = 1,
   445		.use_pmdown_time = 1,
   446		.endianness = 1,
   447		.non_legacy_dai_naming = 1,
   448		.controls = rk817_volume_controls,
   449		.num_controls = ARRAY_SIZE(rk817_volume_controls),
   450		.dapm_routes = rk817_dapm_routes,
   451		.num_dapm_routes = ARRAY_SIZE(rk817_dapm_routes),
   452		.dapm_widgets = rk817_dapm_widgets,
   453		.num_dapm_widgets = ARRAY_SIZE(rk817_dapm_widgets),
   454		.set_pll = rk817_set_component_pll,
   455	};
   456	
   457	static int rk817_codec_parse_dt_property(struct device *dev,
   458						 struct rk817_codec_priv *rk817)
   459	{
   460		struct device_node *node = dev->parent->of_node;
   461	
   462		if (!node) {
   463			dev_err(dev, "%s() dev->parent->of_node is NULL\n",
   464				__func__);
   465			return -ENODEV;
   466		}
   467	
   468		node = of_get_child_by_name(dev->parent->of_node, "codec");
   469		if (!node) {
   470			dev_err(dev, "%s() Can not get child: codec\n",
   471				__func__);
   472			return -ENODEV;
   473		}
   474	
   475		rk817->mic_in_differential =
   476				of_property_read_bool(node, "mic-in-differential");
   477	
   478		return 0;
   479	}
   480	
   481	static int rk817_platform_probe(struct platform_device *pdev)
   482	{
   483		struct rk808 *rk808 = dev_get_drvdata(pdev->dev.parent);
   484		struct rk817_codec_priv *rk817_codec_data;
   485		int ret;
   486	
   487		if (!rk808) {
   488			dev_err(&pdev->dev, "%s : rk817 is NULL\n", __func__);
   489			return -EINVAL;
   490		}
   491	
   492		rk817_codec_data = devm_kzalloc(&pdev->dev,
   493						sizeof(struct rk817_codec_priv),
   494						GFP_KERNEL);
   495		if (!rk817_codec_data)
   496			return -ENOMEM;
   497	
   498		platform_set_drvdata(pdev, rk817_codec_data);
   499	
   500		rk817_codec_data->rk808 = rk808;
   501	
   502		ret = rk817_codec_parse_dt_property(&pdev->dev, rk817_codec_data);
   503		if (ret < 0) {
   504			dev_err(&pdev->dev, "%s() parse device tree property error %d\n",
   505				__func__, ret);
   506			goto err_;
   507		}
   508	
   509		rk817_codec_data->mclk = clk_get(pdev->dev.parent, "mclk");
   510		if (IS_ERR(rk817_codec_data->mclk)) {
   511			dev_err(&pdev->dev, "Unable to get mclk\n");
   512			ret = -ENXIO;
   513			goto err_;
   514		}
   515	
   516		ret = clk_prepare_enable(rk817_codec_data->mclk);
   517		if (ret < 0) {
   518			dev_err(&pdev->dev, "%s() clock prepare error %d\n",
   519				__func__, ret);
   520			goto err_;
   521		}
   522	
   523		ret = devm_snd_soc_register_component(&pdev->dev, &soc_codec_dev_rk817,
   524						      rk817_dai, ARRAY_SIZE(rk817_dai));
   525		if (ret < 0) {
   526			dev_err(&pdev->dev, "%s() register codec error %d\n",
   527				__func__, ret);
   528			goto err_;
   529		}
   530	
   531		return 0;
   532	err_:
   533	
   534		return ret;
   535	}
   536	
   537	static int rk817_platform_remove(struct platform_device *pdev)
   538	{
   539		struct rk817_codec_priv *rk817 = platform_get_drvdata(pdev);
   540	
   541		clk_disable_unprepare(rk817->mclk);
   542	
   543		return 0;
   544	}
   545	
 > 546	MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
   547	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 32126 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [v7 2/4] ASoC: Add Rockchip rk817 audio CODEC support
Date: Wed, 21 Apr 2021 04:34:19 +0800	[thread overview]
Message-ID: <202104210447.nRqqB26g-lkp@intel.com> (raw)
In-Reply-To: <20210420160747.22942-2-macroalpha82@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7805 bytes --]

Hi Chris,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on asoc/for-next]
[also build test ERROR on lee-mfd/for-mfd-next sound/for-next v5.12-rc8 next-20210420]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Chris-Morgan/mfd-Add-Rockchip-rk817-audio-CODEC-support/20210421-000916
base:   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
config: nds32-randconfig-r004-20210420 (attached as .config)
compiler: nds32le-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/438ec6f1ceec6d4d7cde8169bc80110102e6a396
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Chris-Morgan/mfd-Add-Rockchip-rk817-audio-CODEC-support/20210421-000916
        git checkout 438ec6f1ceec6d4d7cde8169bc80110102e6a396
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=nds32 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   sound/soc/codecs/rk817_codec.c: In function 'rk817_probe':
>> sound/soc/codecs/rk817_codec.c:418:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
     418 |  int ret;
         |      ^~~
   In file included from include/linux/bpf.h:19,
                    from include/linux/bpf-cgroup.h:5,
                    from include/linux/cgroup-defs.h:22,
                    from include/linux/cgroup.h:28,
                    from include/linux/memcontrol.h:13,
                    from include/linux/swap.h:9,
                    from include/linux/suspend.h:5,
                    from include/linux/regulator/consumer.h:35,
                    from include/linux/regulator/machine.h:15,
                    from include/linux/mfd/rk808.h:18,
                    from sound/soc/codecs/rk817_codec.c:10:
   sound/soc/codecs/rk817_codec.c: At top level:
>> sound/soc/codecs/rk817_codec.c:546:25: error: 'rk817_codec_dt_ids' undeclared here (not in a function); did you mean 'rk817_codec_priv'?
     546 | MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
         |                         ^~~~~~~~~~~~~~~~~~
   include/linux/module.h:238:15: note: in definition of macro 'MODULE_DEVICE_TABLE'
     238 | extern typeof(name) __mod_##type##__##name##_device_table  \
         |               ^~~~
>> include/linux/module.h:238:21: error: '__mod_of__rk817_codec_dt_ids_device_table' aliased to undefined symbol 'rk817_codec_dt_ids'
     238 | extern typeof(name) __mod_##type##__##name##_device_table  \
         |                     ^~~~~~
   sound/soc/codecs/rk817_codec.c:546:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
     546 | MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
         | ^~~~~~~~~~~~~~~~~~~


vim +546 sound/soc/codecs/rk817_codec.c

   413	
   414	static int rk817_probe(struct snd_soc_component *component)
   415	{
   416		struct rk817_codec_priv *rk817 = snd_soc_component_get_drvdata(component);
   417		struct rk808 *rk808 = dev_get_drvdata(component->dev->parent);
 > 418		int ret;
   419	
   420		snd_soc_component_init_regmap(component, rk808->regmap);
   421		rk817->component = component;
   422	
   423		ret = snd_soc_component_write(component, RK817_CODEC_DTOP_LPT_SRST, 0x40);
   424	
   425		rk817_init(component);
   426	
   427		/* setting initial pll values so that we can continue to leverage simple-audio-card.
   428		 * The values aren't important since no parameters are used.
   429		 */
   430	
   431		snd_soc_component_set_pll(component, 0, 0, 0, 0);
   432	
   433		return 0;
   434	}
   435	
   436	static void rk817_remove(struct snd_soc_component *component)
   437	{
   438		snd_soc_component_exit_regmap(component);
   439	}
   440	
   441	static const struct snd_soc_component_driver soc_codec_dev_rk817 = {
   442		.probe = rk817_probe,
   443		.remove = rk817_remove,
   444		.idle_bias_on = 1,
   445		.use_pmdown_time = 1,
   446		.endianness = 1,
   447		.non_legacy_dai_naming = 1,
   448		.controls = rk817_volume_controls,
   449		.num_controls = ARRAY_SIZE(rk817_volume_controls),
   450		.dapm_routes = rk817_dapm_routes,
   451		.num_dapm_routes = ARRAY_SIZE(rk817_dapm_routes),
   452		.dapm_widgets = rk817_dapm_widgets,
   453		.num_dapm_widgets = ARRAY_SIZE(rk817_dapm_widgets),
   454		.set_pll = rk817_set_component_pll,
   455	};
   456	
   457	static int rk817_codec_parse_dt_property(struct device *dev,
   458						 struct rk817_codec_priv *rk817)
   459	{
   460		struct device_node *node = dev->parent->of_node;
   461	
   462		if (!node) {
   463			dev_err(dev, "%s() dev->parent->of_node is NULL\n",
   464				__func__);
   465			return -ENODEV;
   466		}
   467	
   468		node = of_get_child_by_name(dev->parent->of_node, "codec");
   469		if (!node) {
   470			dev_err(dev, "%s() Can not get child: codec\n",
   471				__func__);
   472			return -ENODEV;
   473		}
   474	
   475		rk817->mic_in_differential =
   476				of_property_read_bool(node, "mic-in-differential");
   477	
   478		return 0;
   479	}
   480	
   481	static int rk817_platform_probe(struct platform_device *pdev)
   482	{
   483		struct rk808 *rk808 = dev_get_drvdata(pdev->dev.parent);
   484		struct rk817_codec_priv *rk817_codec_data;
   485		int ret;
   486	
   487		if (!rk808) {
   488			dev_err(&pdev->dev, "%s : rk817 is NULL\n", __func__);
   489			return -EINVAL;
   490		}
   491	
   492		rk817_codec_data = devm_kzalloc(&pdev->dev,
   493						sizeof(struct rk817_codec_priv),
   494						GFP_KERNEL);
   495		if (!rk817_codec_data)
   496			return -ENOMEM;
   497	
   498		platform_set_drvdata(pdev, rk817_codec_data);
   499	
   500		rk817_codec_data->rk808 = rk808;
   501	
   502		ret = rk817_codec_parse_dt_property(&pdev->dev, rk817_codec_data);
   503		if (ret < 0) {
   504			dev_err(&pdev->dev, "%s() parse device tree property error %d\n",
   505				__func__, ret);
   506			goto err_;
   507		}
   508	
   509		rk817_codec_data->mclk = clk_get(pdev->dev.parent, "mclk");
   510		if (IS_ERR(rk817_codec_data->mclk)) {
   511			dev_err(&pdev->dev, "Unable to get mclk\n");
   512			ret = -ENXIO;
   513			goto err_;
   514		}
   515	
   516		ret = clk_prepare_enable(rk817_codec_data->mclk);
   517		if (ret < 0) {
   518			dev_err(&pdev->dev, "%s() clock prepare error %d\n",
   519				__func__, ret);
   520			goto err_;
   521		}
   522	
   523		ret = devm_snd_soc_register_component(&pdev->dev, &soc_codec_dev_rk817,
   524						      rk817_dai, ARRAY_SIZE(rk817_dai));
   525		if (ret < 0) {
   526			dev_err(&pdev->dev, "%s() register codec error %d\n",
   527				__func__, ret);
   528			goto err_;
   529		}
   530	
   531		return 0;
   532	err_:
   533	
   534		return ret;
   535	}
   536	
   537	static int rk817_platform_remove(struct platform_device *pdev)
   538	{
   539		struct rk817_codec_priv *rk817 = platform_get_drvdata(pdev);
   540	
   541		clk_disable_unprepare(rk817->mclk);
   542	
   543		return 0;
   544	}
   545	
 > 546	MODULE_DEVICE_TABLE(of, rk817_codec_dt_ids);
   547	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 32126 bytes --]

  parent reply	other threads:[~2021-04-20 20:36 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-20 16:07 [v7 1/4] mfd: Add Rockchip rk817 audio CODEC support Chris Morgan
2021-04-20 16:07 ` Chris Morgan
2021-04-20 16:07 ` Chris Morgan
2021-04-20 16:07 ` [v7 2/4] ASoC: " Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 16:19   ` Mark Brown
2021-04-20 16:19     ` Mark Brown
2021-04-20 16:19     ` Mark Brown
2021-04-20 18:28   ` kernel test robot
2021-04-20 18:28     ` kernel test robot
2021-04-20 20:34   ` kernel test robot [this message]
2021-04-20 20:34     ` kernel test robot
2021-04-20 16:07 ` [v7 3/4] dt-bindings: " Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 19:56   ` Johan Jonker
2021-04-20 19:56     ` Johan Jonker
2021-04-20 19:56     ` Johan Jonker
2021-04-21 17:16     ` Chris Morgan
2021-04-21 17:16       ` Chris Morgan
2021-04-20 16:07 ` [v7 4/4] arm64: dts: rockchip: add rk817 codec to Odroid Go Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 16:07   ` Chris Morgan
2021-04-20 20:13   ` Johan Jonker
2021-04-20 20:13     ` Johan Jonker
2021-04-20 20:13     ` Johan Jonker
2021-04-21 17:19     ` Chris Morgan
2021-04-21 17:19       ` Chris Morgan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202104210447.nRqqB26g-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=heiko@sntech.de \
    --cc=jbx6244@gmail.com \
    --cc=kbuild-all@lists.01.org \
    --cc=lee.jones@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=macroalpha82@gmail.com \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=robh+dt@kernel.org \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.