[alsa-devel] [PATCH 5/8] ASoC: tegra: set edge mode for TDM correctly
kbuild test robot
lkp at intel.com
Tue Sep 17 21:33:07 CEST 2019
Hi Ben,
I love your patch! Yet something to improve:
[auto build test ERROR on linus/master]
[cannot apply to v5.3 next-20190916]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Ben-Dooks/ASoC-tegra-Add-a-TDM-configuration-callback/20190918-022251
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 errors (new ones prefixed by >>):
sound/soc/tegra/tegra30_i2s.c: In function 'tegra30_i2s_set_fmt':
>> sound/soc/tegra/tegra30_i2s.c:121:63: error: macro "regmap_update_bits" requires 4 arguments, but only 3 given
i2s->is_tdm ? TEGRA30_I2S_CH_CTRL_EGDE_CTRL_NEG_EDGE : 0);
^
>> sound/soc/tegra/tegra30_i2s.c:120:2: error: 'regmap_update_bits' undeclared (first use in this function); did you mean 'regmap_update_bits_base'?
regmap_update_bits(i2s->regmap, TEGRA30_I2S_CH_CTRL_EGDE_CTRL_MASK,
^~~~~~~~~~~~~~~~~~
regmap_update_bits_base
sound/soc/tegra/tegra30_i2s.c:120:2: note: each undeclared identifier is reported only once for each function it appears in
vim +/regmap_update_bits +121 sound/soc/tegra/tegra30_i2s.c
64
65 static int tegra30_i2s_set_fmt(struct snd_soc_dai *dai,
66 unsigned int fmt)
67 {
68 struct tegra30_i2s *i2s = snd_soc_dai_get_drvdata(dai);
69 unsigned int mask = 0, val = 0;
70
71 switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
72 case SND_SOC_DAIFMT_NB_NF:
73 break;
74 default:
75 return -EINVAL;
76 }
77
78 mask |= TEGRA30_I2S_CTRL_MASTER_ENABLE;
79 switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
80 case SND_SOC_DAIFMT_CBS_CFS:
81 val |= TEGRA30_I2S_CTRL_MASTER_ENABLE;
82 break;
83 case SND_SOC_DAIFMT_CBM_CFM:
84 break;
85 default:
86 return -EINVAL;
87 }
88
89 i2s->is_tdm = false;
90 mask |= TEGRA30_I2S_CTRL_FRAME_FORMAT_MASK |
91 TEGRA30_I2S_CTRL_LRCK_MASK;
92 switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
93 case SND_SOC_DAIFMT_DSP_A:
94 i2s->is_tdm = true;
95 val |= TEGRA30_I2S_CTRL_FRAME_FORMAT_FSYNC;
96 val |= TEGRA30_I2S_CTRL_LRCK_L_LOW;
97 break;
98 case SND_SOC_DAIFMT_DSP_B:
99 i2s->is_tdm = true;
100 val |= TEGRA30_I2S_CTRL_FRAME_FORMAT_FSYNC;
101 val |= TEGRA30_I2S_CTRL_LRCK_R_LOW;
102 break;
103 case SND_SOC_DAIFMT_I2S:
104 val |= TEGRA30_I2S_CTRL_FRAME_FORMAT_LRCK;
105 val |= TEGRA30_I2S_CTRL_LRCK_L_LOW;
106 break;
107 case SND_SOC_DAIFMT_RIGHT_J:
108 val |= TEGRA30_I2S_CTRL_FRAME_FORMAT_LRCK;
109 val |= TEGRA30_I2S_CTRL_LRCK_L_LOW;
110 break;
111 case SND_SOC_DAIFMT_LEFT_J:
112 val |= TEGRA30_I2S_CTRL_FRAME_FORMAT_LRCK;
113 val |= TEGRA30_I2S_CTRL_LRCK_L_LOW;
114 break;
115 default:
116 return -EINVAL;
117 }
118
119 pm_runtime_get_sync(dai->dev);
> 120 regmap_update_bits(i2s->regmap, TEGRA30_I2S_CH_CTRL_EGDE_CTRL_MASK,
> 121 i2s->is_tdm ? TEGRA30_I2S_CH_CTRL_EGDE_CTRL_NEG_EDGE : 0);
122 regmap_update_bits(i2s->regmap, TEGRA30_I2S_CTRL, mask, val);
123 pm_runtime_put(dai->dev);
124
125 return 0;
126 }
127
---
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: 61579 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20190918/440ca7bf/attachment-0001.gz>
More information about the Alsa-devel
mailing list