All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Sameer Pujar <spujar@nvidia.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org,
	Mark Brown <broonie@kernel.org>
Subject: sound/soc/tegra/tegra210_adx.c:125:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
Date: Sat, 27 Nov 2021 03:43:42 +0800	[thread overview]
Message-ID: <202111270332.sDUjP9Xg-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   1bff7d7e8c487b9b0ceab70b43b781f1d45f55eb
commit: a99ab6f395a9e45ca3f9047e9b88d6e02737419f ASoC: tegra: Add Tegra210 based ADX driver
date:   10 weeks ago
config: riscv-randconfig-s032-20211126 (https://download.01.org/0day-ci/archive/20211127/202111270332.sDUjP9Xg-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 11.2.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.4-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a99ab6f395a9e45ca3f9047e9b88d6e02737419f
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout a99ab6f395a9e45ca3f9047e9b88d6e02737419f
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=riscv SHELL=/bin/bash sound/soc/tegra/

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


sparse warnings: (new ones prefixed by >>)
>> sound/soc/tegra/tegra210_adx.c:125:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
   sound/soc/tegra/tegra210_adx.c:128:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
   sound/soc/tegra/tegra210_adx.c:131:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
>> sound/soc/tegra/tegra210_adx.c:153:38: sparse: sparse: incorrect type in argument 3 (different base types) @@     expected unsigned int format @@     got restricted snd_pcm_format_t @@
   sound/soc/tegra/tegra210_adx.c:153:38: sparse:     expected unsigned int format
   sound/soc/tegra/tegra210_adx.c:153:38: sparse:     got restricted snd_pcm_format_t
   sound/soc/tegra/tegra210_adx.c:162:56: sparse: sparse: incorrect type in argument 3 (different base types) @@     expected unsigned int format @@     got restricted snd_pcm_format_t @@
   sound/soc/tegra/tegra210_adx.c:162:56: sparse:     expected unsigned int format
   sound/soc/tegra/tegra210_adx.c:162:56: sparse:     got restricted snd_pcm_format_t

vim +125 sound/soc/tegra/tegra210_adx.c

   109	
   110	static int tegra210_adx_set_audio_cif(struct snd_soc_dai *dai,
   111					      unsigned int channels,
   112					      unsigned int format,
   113					      unsigned int reg)
   114	{
   115		struct tegra210_adx *adx = snd_soc_dai_get_drvdata(dai);
   116		struct tegra_cif_conf cif_conf;
   117		int audio_bits;
   118	
   119		memset(&cif_conf, 0, sizeof(struct tegra_cif_conf));
   120	
   121		if (channels < 1 || channels > 16)
   122			return -EINVAL;
   123	
   124		switch (format) {
 > 125		case SNDRV_PCM_FORMAT_S8:
   126			audio_bits = TEGRA_ACIF_BITS_8;
   127			break;
   128		case SNDRV_PCM_FORMAT_S16_LE:
   129			audio_bits = TEGRA_ACIF_BITS_16;
   130			break;
   131		case SNDRV_PCM_FORMAT_S32_LE:
   132			audio_bits = TEGRA_ACIF_BITS_32;
   133			break;
   134		default:
   135			return -EINVAL;
   136		}
   137	
   138		cif_conf.audio_ch = channels;
   139		cif_conf.client_ch = channels;
   140		cif_conf.audio_bits = audio_bits;
   141		cif_conf.client_bits = audio_bits;
   142	
   143		tegra_set_cif(adx->regmap, reg, &cif_conf);
   144	
   145		return 0;
   146	}
   147	
   148	static int tegra210_adx_out_hw_params(struct snd_pcm_substream *substream,
   149					      struct snd_pcm_hw_params *params,
   150					      struct snd_soc_dai *dai)
   151	{
   152		return tegra210_adx_set_audio_cif(dai, params_channels(params),
 > 153				params_format(params),
   154				TEGRA210_ADX_TX1_CIF_CTRL + ((dai->id - 1) * TEGRA210_ADX_AUDIOCIF_CH_STRIDE));
   155	}
   156	

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

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: sound/soc/tegra/tegra210_adx.c:125:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
Date: Sat, 27 Nov 2021 03:43:42 +0800	[thread overview]
Message-ID: <202111270332.sDUjP9Xg-lkp@intel.com> (raw)

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   1bff7d7e8c487b9b0ceab70b43b781f1d45f55eb
commit: a99ab6f395a9e45ca3f9047e9b88d6e02737419f ASoC: tegra: Add Tegra210 based ADX driver
date:   10 weeks ago
config: riscv-randconfig-s032-20211126 (https://download.01.org/0day-ci/archive/20211127/202111270332.sDUjP9Xg-lkp(a)intel.com/config)
compiler: riscv32-linux-gcc (GCC) 11.2.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.4-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a99ab6f395a9e45ca3f9047e9b88d6e02737419f
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout a99ab6f395a9e45ca3f9047e9b88d6e02737419f
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=riscv SHELL=/bin/bash sound/soc/tegra/

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


sparse warnings: (new ones prefixed by >>)
>> sound/soc/tegra/tegra210_adx.c:125:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
   sound/soc/tegra/tegra210_adx.c:128:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
   sound/soc/tegra/tegra210_adx.c:131:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
>> sound/soc/tegra/tegra210_adx.c:153:38: sparse: sparse: incorrect type in argument 3 (different base types) @@     expected unsigned int format @@     got restricted snd_pcm_format_t @@
   sound/soc/tegra/tegra210_adx.c:153:38: sparse:     expected unsigned int format
   sound/soc/tegra/tegra210_adx.c:153:38: sparse:     got restricted snd_pcm_format_t
   sound/soc/tegra/tegra210_adx.c:162:56: sparse: sparse: incorrect type in argument 3 (different base types) @@     expected unsigned int format @@     got restricted snd_pcm_format_t @@
   sound/soc/tegra/tegra210_adx.c:162:56: sparse:     expected unsigned int format
   sound/soc/tegra/tegra210_adx.c:162:56: sparse:     got restricted snd_pcm_format_t

vim +125 sound/soc/tegra/tegra210_adx.c

   109	
   110	static int tegra210_adx_set_audio_cif(struct snd_soc_dai *dai,
   111					      unsigned int channels,
   112					      unsigned int format,
   113					      unsigned int reg)
   114	{
   115		struct tegra210_adx *adx = snd_soc_dai_get_drvdata(dai);
   116		struct tegra_cif_conf cif_conf;
   117		int audio_bits;
   118	
   119		memset(&cif_conf, 0, sizeof(struct tegra_cif_conf));
   120	
   121		if (channels < 1 || channels > 16)
   122			return -EINVAL;
   123	
   124		switch (format) {
 > 125		case SNDRV_PCM_FORMAT_S8:
   126			audio_bits = TEGRA_ACIF_BITS_8;
   127			break;
   128		case SNDRV_PCM_FORMAT_S16_LE:
   129			audio_bits = TEGRA_ACIF_BITS_16;
   130			break;
   131		case SNDRV_PCM_FORMAT_S32_LE:
   132			audio_bits = TEGRA_ACIF_BITS_32;
   133			break;
   134		default:
   135			return -EINVAL;
   136		}
   137	
   138		cif_conf.audio_ch = channels;
   139		cif_conf.client_ch = channels;
   140		cif_conf.audio_bits = audio_bits;
   141		cif_conf.client_bits = audio_bits;
   142	
   143		tegra_set_cif(adx->regmap, reg, &cif_conf);
   144	
   145		return 0;
   146	}
   147	
   148	static int tegra210_adx_out_hw_params(struct snd_pcm_substream *substream,
   149					      struct snd_pcm_hw_params *params,
   150					      struct snd_soc_dai *dai)
   151	{
   152		return tegra210_adx_set_audio_cif(dai, params_channels(params),
 > 153				params_format(params),
   154				TEGRA210_ADX_TX1_CIF_CTRL + ((dai->id - 1) * TEGRA210_ADX_AUDIOCIF_CH_STRIDE));
   155	}
   156	

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

             reply	other threads:[~2021-11-26 19:46 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-26 19:43 kernel test robot [this message]
2021-11-26 19:43 ` sound/soc/tegra/tegra210_adx.c:125:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer kernel test robot

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=202111270332.sDUjP9Xg-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=broonie@kernel.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=spujar@nvidia.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.