[alsa-devel] [PATCH v3 RESEND 3/3] ASoC: samsung: Rename Arndale card driver
kbuild test robot
lkp at intel.com
Tue Oct 1 19:07:36 CEST 2019
Hi Sylwester,
I love your patch! Yet something to improve:
[auto build test ERROR on asoc/for-next]
[cannot apply to v5.4-rc1 next-20191001]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Sylwester-Nawrocki/ASoC-samsung-arndale-Simplify-DAI-link-initialization/20191002-000244
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
config: mips-allmodconfig (attached as .config)
compiler: mips-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp at intel.com>
All error/warnings (new ones prefixed by >>):
In file included from sound/soc/samsung/arndale.c:7:0:
>> sound/soc/samsung/arndale.c:201:25: error: 'arndale_of_match' undeclared here (not in a function); did you mean 'arndale_audio_of_match'?
MODULE_DEVICE_TABLE(of, arndale_of_match);
^
include/linux/module.h:227:15: note: in definition of macro 'MODULE_DEVICE_TABLE'
extern typeof(name) __mod_##type##__##name##_device_table \
^~~~
>> include/linux/module.h:227:21: error: '__mod_of__arndale_of_match_device_table' aliased to undefined symbol 'arndale_of_match'
extern typeof(name) __mod_##type##__##name##_device_table \
^
>> sound/soc/samsung/arndale.c:201:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
MODULE_DEVICE_TABLE(of, arndale_of_match);
^~~~~~~~~~~~~~~~~~~
--
In file included from sound/soc//samsung/arndale.c:7:0:
sound/soc//samsung/arndale.c:201:25: error: 'arndale_of_match' undeclared here (not in a function); did you mean 'arndale_audio_of_match'?
MODULE_DEVICE_TABLE(of, arndale_of_match);
^
include/linux/module.h:227:15: note: in definition of macro 'MODULE_DEVICE_TABLE'
extern typeof(name) __mod_##type##__##name##_device_table \
^~~~
>> include/linux/module.h:227:21: error: '__mod_of__arndale_of_match_device_table' aliased to undefined symbol 'arndale_of_match'
extern typeof(name) __mod_##type##__##name##_device_table \
^
sound/soc//samsung/arndale.c:201:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
MODULE_DEVICE_TABLE(of, arndale_of_match);
^~~~~~~~~~~~~~~~~~~
vim +201 sound/soc/samsung/arndale.c
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 6
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 @7 #include <linux/module.h>
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 8 #include <linux/of_device.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 9 #include <linux/platform_device.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 10 #include <linux/clk.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 11
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 12 #include <sound/soc.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 13 #include <sound/soc-dapm.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 14 #include <sound/pcm.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 15 #include <sound/pcm_params.h>
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 16
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 17 #include "../codecs/wm8994.h"
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 18 #include "i2s.h"
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 19
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 20 static int arndale_rt5631_hw_params(struct snd_pcm_substream *substream,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 21 struct snd_pcm_hw_params *params)
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 22 {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 23 struct snd_soc_pcm_runtime *rtd = substream->private_data;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 24 struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 25 struct snd_soc_dai *codec_dai = rtd->codec_dai;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 26 int rfs, ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 27 unsigned long rclk;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 28
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 29 rfs = 256;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 30
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 31 rclk = params_rate(params) * rfs;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 32
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 33 ret = snd_soc_dai_set_sysclk(cpu_dai, SAMSUNG_I2S_CDCLK,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 34 0, SND_SOC_CLOCK_OUT);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 35 if (ret < 0)
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 36 return ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 37
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 38 ret = snd_soc_dai_set_sysclk(cpu_dai, SAMSUNG_I2S_RCLKSRC_0,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 39 0, SND_SOC_CLOCK_OUT);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 40
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 41 if (ret < 0)
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 42 return ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 43
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 44 ret = snd_soc_dai_set_sysclk(codec_dai, 0, rclk, SND_SOC_CLOCK_OUT);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 45 if (ret < 0)
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 46 return ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 47
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 48 return 0;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 49 }
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 50
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 51 static struct snd_soc_ops arndale_rt5631_ops = {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 52 .hw_params = arndale_rt5631_hw_params,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 53 };
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 54
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 55 static int arndale_wm1811_hw_params(struct snd_pcm_substream *substream,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 56 struct snd_pcm_hw_params *params)
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 57 {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 58 struct snd_soc_pcm_runtime *rtd = substream->private_data;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 59 struct snd_soc_dai *codec_dai = rtd->codec_dai;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 60 unsigned int rfs, rclk;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 61
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 62 /* Ensure AIF1CLK is >= 3 MHz for optimal performance */
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 63 if (params_width(params) == 24)
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 64 rfs = 384;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 65 else if (params_rate(params) == 8000 || params_rate(params) == 11025)
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 66 rfs = 512;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 67 else
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 68 rfs = 256;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 69
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 70 rclk = params_rate(params) * rfs;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 71
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 72 /*
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 73 * We add 1 to the frequency value to ensure proper EPLL setting
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 74 * for each audio sampling rate (see epll_24mhz_tbl in drivers/clk/
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 75 * samsung/clk-exynos5250.c for list of available EPLL rates).
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 76 * The CODEC uses clk API and the value will be rounded hence the MCLK1
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 77 * clock's frequency will still be exact multiple of the sample rate.
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 78 */
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 79 return snd_soc_dai_set_sysclk(codec_dai, WM8994_SYSCLK_MCLK1,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 80 rclk + 1, SND_SOC_CLOCK_IN);
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 81 }
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 82
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 83 static struct snd_soc_ops arndale_wm1811_ops = {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 84 .hw_params = arndale_wm1811_hw_params,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 85 };
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 86
930f74a171f5f3 sound/soc/samsung/arndale_rt5631.c Kuninori Morimoto 2019-06-06 87 SND_SOC_DAILINK_DEFS(rt5631_hifi,
930f74a171f5f3 sound/soc/samsung/arndale_rt5631.c Kuninori Morimoto 2019-06-06 88 DAILINK_COMP_ARRAY(COMP_EMPTY()),
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 89 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "rt5631-aif1")),
a0e95c4d376d30 sound/soc/samsung/arndale_rt5631.c Kuninori Morimoto 2019-06-28 90 DAILINK_COMP_ARRAY(COMP_EMPTY()));
930f74a171f5f3 sound/soc/samsung/arndale_rt5631.c Kuninori Morimoto 2019-06-06 91
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 92 static struct snd_soc_dai_link arndale_rt5631_dai[] = {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 93 {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 94 .name = "RT5631 HiFi",
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 95 .stream_name = "Primary",
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 96 .dai_fmt = SND_SOC_DAIFMT_I2S
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 97 | SND_SOC_DAIFMT_NB_NF
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 98 | SND_SOC_DAIFMT_CBS_CFS,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 99 .ops = &arndale_rt5631_ops,
930f74a171f5f3 sound/soc/samsung/arndale_rt5631.c Kuninori Morimoto 2019-06-06 100 SND_SOC_DAILINK_REG(rt5631_hifi),
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 101 },
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 102 };
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 103
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 104 SND_SOC_DAILINK_DEFS(wm1811_hifi,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 105 DAILINK_COMP_ARRAY(COMP_EMPTY()),
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 106 DAILINK_COMP_ARRAY(COMP_CODEC(NULL, "wm8994-aif1")),
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 107 DAILINK_COMP_ARRAY(COMP_EMPTY()));
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 108
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 109 static struct snd_soc_dai_link arndale_wm1811_dai[] = {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 110 {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 111 .name = "WM1811 HiFi",
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 112 .stream_name = "Primary",
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 113 .dai_fmt = SND_SOC_DAIFMT_I2S
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 114 | SND_SOC_DAIFMT_NB_NF
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 115 | SND_SOC_DAIFMT_CBM_CFM,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 116 .ops = &arndale_wm1811_ops,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 117 SND_SOC_DAILINK_REG(wm1811_hifi),
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 118 },
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 119 };
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 120
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 121 static struct snd_soc_card arndale_rt5631 = {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 122 .name = "Arndale RT5631",
54d8697fa5036d sound/soc/samsung/arndale_rt5631.c Axel Lin 2015-08-21 123 .owner = THIS_MODULE,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 124 .dai_link = arndale_rt5631_dai,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 125 .num_links = ARRAY_SIZE(arndale_rt5631_dai),
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 126 };
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 127
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 128 static struct snd_soc_card arndale_wm1811 = {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 129 .name = "Arndale WM1811",
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 130 .owner = THIS_MODULE,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 131 .dai_link = arndale_wm1811_dai,
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 132 .num_links = ARRAY_SIZE(arndale_wm1811_dai),
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 133 };
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 134
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 135 static void arndale_put_of_nodes(struct snd_soc_card *card)
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 136 {
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 137 struct snd_soc_dai_link *dai_link;
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 138 int i;
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 139
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 140 for_each_card_prelinks(card, i, dai_link) {
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 141 of_node_put(dai_link->cpus->of_node);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 142 of_node_put(dai_link->codecs->of_node);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 143 }
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 144 }
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 145
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 146 static int arndale_audio_probe(struct platform_device *pdev)
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 147 {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 148 struct device_node *np = pdev->dev.of_node;
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 149 struct snd_soc_card *card;
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 150 struct snd_soc_dai_link *dai_link;
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 151 int ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 152
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 153 card = (struct snd_soc_card *)of_device_get_match_data(&pdev->dev);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 154 card->dev = &pdev->dev;
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 155 dai_link = card->dai_link;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 156
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 157 dai_link->cpus->of_node = of_parse_phandle(np, "samsung,audio-cpu", 0);
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 158 if (!dai_link->cpus->of_node) {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 159 dev_err(&pdev->dev,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 160 "Property 'samsung,audio-cpu' missing or invalid\n");
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 161 return -EINVAL;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 162 }
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 163
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 164 if (!dai_link->platforms->name)
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 165 dai_link->platforms->of_node = dai_link->cpus->of_node;
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 166
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 167 dai_link->codecs->of_node = of_parse_phandle(np, "samsung,audio-codec", 0);
bd728e26684606 sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 168 if (!dai_link->codecs->of_node) {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 169 dev_err(&pdev->dev,
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 170 "Property 'samsung,audio-codec' missing or invalid\n");
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 171 ret = -EINVAL;
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 172 goto err_put_of_nodes;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 173 }
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 174
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 175 ret = devm_snd_soc_register_card(card->dev, card);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 176 if (ret) {
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 177 dev_err(&pdev->dev, "snd_soc_register_card() failed: %d\n", ret);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 178 goto err_put_of_nodes;
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 179 }
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 180 return 0;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 181
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 182 err_put_of_nodes:
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 183 arndale_put_of_nodes(card);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 184 return ret;
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 185 }
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 186
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 187 static int arndale_audio_remove(struct platform_device *pdev)
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 188 {
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 189 struct snd_soc_card *card = platform_get_drvdata(pdev);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 190
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 191 arndale_put_of_nodes(card);
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 192 return 0;
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 193 }
fb629fa2587d0c sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-09-20 194
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 195 static const struct of_device_id arndale_audio_of_match[] = {
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 196 { .compatible = "samsung,arndale-rt5631", .data = &arndale_rt5631 },
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 197 { .compatible = "samsung,arndale-alc5631", .data = &arndale_rt5631 },
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 198 { .compatible = "samsung,arndale-wm1811", .data = &arndale_wm1811 },
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 199 {},
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 200 };
613da35b4aeddb sound/soc/samsung/arndale_rt5631.c Sylwester Nawrocki 2019-10-01 @201 MODULE_DEVICE_TABLE(of, arndale_of_match);
d683d0b690c134 sound/soc/samsung/arndale_rt5631.c Krishna Mohan Dani 2014-11-26 202
:::::: The code at line 201 was first introduced by commit
:::::: 613da35b4aeddbee0c0a329e6911a7be4c7df854 ASoC: samsung: arndale: Add support for WM1811 CODEC
:::::: TO: Sylwester Nawrocki <s.nawrocki at samsung.com>
:::::: CC: 0day robot <lkp at intel.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 62110 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20191002/765757c5/attachment-0001.gz>
More information about the Alsa-devel
mailing list