[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202212212052.Ge9NUd7o-lkp@intel.com>
Date: Wed, 21 Dec 2022 20:37:19 +0800
From: kernel test robot <lkp@...el.com>
To: Kevin Lu <luminlong@....com>, lgirdwood@...il.com,
broonie@...nel.org, perex@...ex.cz, tiwai@...e.com
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org,
shenghao-ding@...com, kevin-lu@...com, navada@...com,
peeyush@...com, Kevin Lu <luminlong@....com>
Subject: Re: [PATCH v1] ALSA SoC: Texas Instruments TAS2781 Audio Smart Amp
Hi Kevin,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on broonie-sound/for-next]
[also build test WARNING on linus/master v6.1 next-20221220]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Kevin-Lu/ALSA-SoC-Texas-Instruments-TAS2781-Audio-Smart-Amp/20221220-231421
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
patch link: https://lore.kernel.org/r/20221220151157.2247-1-luminlong%40139.com
patch subject: [PATCH v1] ALSA SoC: Texas Instruments TAS2781 Audio Smart Amp
config: arm-randconfig-r046-20221220
compiler: clang version 16.0.0 (https://github.com/llvm/llvm-project 98b13979fb05f3ed288a900deb843e7b27589e58)
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
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/intel-lab-lkp/linux/commit/de2ce420cebecc02e8b8f1eda156c623f9e8bc37
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Kevin-Lu/ALSA-SoC-Texas-Instruments-TAS2781-Audio-Smart-Amp/20221220-231421
git checkout de2ce420cebecc02e8b8f1eda156c623f9e8bc37
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash sound/soc/codecs/
If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
All warnings (new ones prefixed by >>):
>> sound/soc/codecs/tas2781-i2c.c:241:6: warning: no previous prototype for function 'tasdevice_select_cfg_blk' [-Wmissing-prototypes]
void tasdevice_select_cfg_blk(void *pContext, int conf_no,
^
sound/soc/codecs/tas2781-i2c.c:241:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void tasdevice_select_cfg_blk(void *pContext, int conf_no,
^
static
>> sound/soc/codecs/tas2781-i2c.c:831:6: warning: no previous prototype for function 'tasdevice_regbin_ready' [-Wmissing-prototypes]
void tasdevice_regbin_ready(const struct firmware *pFW,
^
sound/soc/codecs/tas2781-i2c.c:831:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void tasdevice_regbin_ready(const struct firmware *pFW,
^
static
>> sound/soc/codecs/tas2781-i2c.c:1005:6: warning: no previous prototype for function 'tasdevice_config_info_remove' [-Wmissing-prototypes]
void tasdevice_config_info_remove(void *pContext)
^
sound/soc/codecs/tas2781-i2c.c:1005:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void tasdevice_config_info_remove(void *pContext)
^
static
>> sound/soc/codecs/tas2781-i2c.c:1433:5: warning: no previous prototype for function 'tasdevice_parse_dt' [-Wmissing-prototypes]
int tasdevice_parse_dt(struct tasdevice_priv *tas_dev)
^
sound/soc/codecs/tas2781-i2c.c:1433:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int tasdevice_parse_dt(struct tasdevice_priv *tas_dev)
^
static
>> sound/soc/codecs/tas2781-i2c.c:2005:6: warning: no previous prototype for function 'tasdevice_remove' [-Wmissing-prototypes]
void tasdevice_remove(struct tasdevice_priv *tas_dev)
^
sound/soc/codecs/tas2781-i2c.c:2005:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void tasdevice_remove(struct tasdevice_priv *tas_dev)
^
static
5 warnings generated.
--
>> sound/soc/codecs/tas2781-dsp.c:226:5: warning: no previous prototype for function 'fw_parse_program_data_kernel' [-Wmissing-prototypes]
int fw_parse_program_data_kernel(struct tasdevice_priv *tas_dev,
^
sound/soc/codecs/tas2781-dsp.c:226:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int fw_parse_program_data_kernel(struct tasdevice_priv *tas_dev,
^
static
>> sound/soc/codecs/tas2781-dsp.c:298:5: warning: no previous prototype for function 'fw_parse_configuration_data_kernel' [-Wmissing-prototypes]
int fw_parse_configuration_data_kernel(
^
sound/soc/codecs/tas2781-dsp.c:298:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int fw_parse_configuration_data_kernel(
^
static
>> sound/soc/codecs/tas2781-dsp.c:398:5: warning: no previous prototype for function 'fw_parse_variable_header_kernel' [-Wmissing-prototypes]
int fw_parse_variable_header_kernel(struct tasdevice_priv *tas_dev,
^
sound/soc/codecs/tas2781-dsp.c:398:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int fw_parse_variable_header_kernel(struct tasdevice_priv *tas_dev,
^
static
>> sound/soc/codecs/tas2781-dsp.c:536:5: warning: no previous prototype for function 'tasdevice_load_block_kernel' [-Wmissing-prototypes]
int tasdevice_load_block_kernel(struct tasdevice_priv *pTAS2781,
^
sound/soc/codecs/tas2781-dsp.c:536:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int tasdevice_load_block_kernel(struct tasdevice_priv *pTAS2781,
^
static
>> sound/soc/codecs/tas2781-dsp.c:650:5: warning: no previous prototype for function 'fw_parse_variable_header_git' [-Wmissing-prototypes]
int fw_parse_variable_header_git(struct tasdevice_priv *tas_dev,
^
sound/soc/codecs/tas2781-dsp.c:650:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int fw_parse_variable_header_git(struct tasdevice_priv *tas_dev,
^
static
>> sound/soc/codecs/tas2781-dsp.c:712:5: warning: no previous prototype for function 'fw_parse_variable_header_cal' [-Wmissing-prototypes]
int fw_parse_variable_header_cal(struct tasdevice_priv *tas_dev,
^
sound/soc/codecs/tas2781-dsp.c:712:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int fw_parse_variable_header_cal(struct tasdevice_priv *tas_dev,
^
static
6 warnings generated.
vim +/tasdevice_select_cfg_blk +241 sound/soc/codecs/tas2781-i2c.c
240
> 241 void tasdevice_select_cfg_blk(void *pContext, int conf_no,
242 unsigned char block_type)
243 {
244 struct tasdevice_priv *tas_dev =
245 (struct tasdevice_priv *) pContext;
246 struct tasdevice_regbin *regbin = &(tas_dev->mtRegbin);
247 struct tasdevice_config_info **cfg_info = regbin->cfg_info;
248 int j = 0, k = 0, chn = 0, chnend = 0;
249
250 if (conf_no >= regbin->ncfgs || conf_no < 0 || NULL == cfg_info) {
251 dev_err(tas_dev->dev,
252 "conf_no should be not more than %u\n",
253 regbin->ncfgs);
254 goto out;
255 } else
256 dev_info(tas_dev->dev,
257 "select_cfg_blk: profile_conf_id = %d\n",
258 conf_no);
259
260 for (j = 0; j < (int)cfg_info[conf_no]->real_nblocks; j++) {
261 unsigned int length = 0, rc = 0;
262
263 if (block_type > 5 || block_type < 2) {
264 dev_err(tas_dev->dev,
265 "ERROR!!!block_type should be in range from 2 to 5\n");
266 goto out;
267 }
268 if (block_type != cfg_info[conf_no]->blk_data[j]->block_type)
269 continue;
270 dev_info(tas_dev->dev,
271 "select_cfg_blk: conf %d, block type:%s\t device idx = 0x%02x\n",
272 conf_no, blocktype[cfg_info[conf_no]->blk_data[j]
273 ->block_type-1], cfg_info[conf_no]->blk_data[j]
274 ->dev_idx);
275
276 for (k = 0; k < (int)cfg_info[conf_no]->blk_data[j]
277 ->nSublocks; k++) {
278 if (cfg_info[conf_no]->blk_data[j]->dev_idx) {
279 chn =
280 cfg_info[conf_no]->blk_data[j]->dev_idx
281 - 1;
282 chnend =
283 cfg_info[conf_no]->blk_data[j]->dev_idx;
284 } else {
285 chn = 0;
286 chnend = tas_dev->ndev;
287 }
288 for (; chn < chnend; chn++)
289 tas_dev->tasdevice[chn].bLoading = true;
290
291 rc = tasdevice_process_block(tas_dev,
292 cfg_info[conf_no]->blk_data[j]->regdata +
293 length,
294 cfg_info[conf_no]->blk_data[j]->dev_idx,
295 cfg_info[conf_no]->blk_data[j]->block_size -
296 length);
297 length += rc;
298 if (cfg_info[conf_no]->blk_data[j]->block_size <
299 length) {
300 dev_err(tas_dev->dev,
301 "select_cfg_blk: ERROR:%u %u out of memory\n",
302 length,
303 cfg_info[conf_no]->blk_data[j]->block_size);
304 break;
305 }
306 }
307 if (length != cfg_info[conf_no]->blk_data[j]->block_size)
308 dev_err(tas_dev->dev,
309 "select_cfg_blk: ERROR: %u %u size is not same\n",
310 length,
311 cfg_info[conf_no]->blk_data[j]->block_size);
312
313 }
314
315 out:
316 return;
317 }
318
--
0-DAY CI Kernel Test Service
https://01.org/lkp
View attachment "config" of type "text/plain" (139271 bytes)
Powered by blists - more mailing lists