Re: [PATCH v2 2/4] ASoC: meson: g12a-toacodec: drop the definition of bits

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jan,

kernel test robot noticed the following build warnings:

[auto build test WARNING on broonie-sound/for-next]
[also build test WARNING on linus/master v6.14-rc5 next-20250307]
[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/Jan-Dakinevich/ASoC-meson-codec-glue-add-support-for-capture-stream/20250310-022013
base:   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
patch link:    https://lore.kernel.org/r/20250309181600.1322701-3-jan.dakinevich%40salutedevices.com
patch subject: [PATCH v2 2/4] ASoC: meson: g12a-toacodec: drop the definition of bits
config: i386-buildonly-randconfig-005-20250310 (https://download.01.org/0day-ci/archive/20250310/202503100909.xnqNYW9u-lkp@xxxxxxxxx/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250310/202503100909.xnqNYW9u-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202503100909.xnqNYW9u-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> sound/soc/meson/g12a-toacodec.c:83:11: warning: result of comparison of constant 18446744073709551615 with expression of type 'typeof (_Generic((mclk_sel), char: (unsigned char)0, unsigned char: (unsigned char)0, signed char: (unsigned char)0, unsigned short: (unsigned short)0, short: (unsigned short)0, unsigned int: (unsigned int)0, int: (unsigned int)0, unsigned long: (unsigned long)0, long: (unsigned long)0, unsigned long long: (unsigned long long)0, long long: (unsigned long long)0, default: (mclk_sel)))' (aka 'unsigned int') is always false [-Wtautological-constant-out-of-range-compare]
      83 |                                       FIELD_PREP(mclk_sel, mux));
         |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/bitfield.h:115:3: note: expanded from macro 'FIELD_PREP'
     115 |                 __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: ");    \
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/bitfield.h:72:53: note: expanded from macro '__BF_FIELD_CHECK'
      72 |                 BUILD_BUG_ON_MSG(__bf_cast_unsigned(_mask, _mask) >     \
         |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
      73 |                                  __bf_cast_unsigned(_reg, ~0ull),       \
         |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      74 |                                  _pfx "type of reg too small for mask"); \
         |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:39:58: note: expanded from macro 'BUILD_BUG_ON_MSG'
      39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
         |                                     ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
   include/linux/compiler_types.h:542:22: note: expanded from macro 'compiletime_assert'
     542 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:530:23: note: expanded from macro '_compiletime_assert'
     530 |         __compiletime_assert(condition, msg, prefix, suffix)
         |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:522:9: note: expanded from macro '__compiletime_assert'
     522 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   1 warning generated.


vim +83 sound/soc/meson/g12a-toacodec.c

    42	
    43	static int g12a_toacodec_mux_put_enum(struct snd_kcontrol *kcontrol,
    44					      struct snd_ctl_elem_value *ucontrol)
    45	{
    46		struct snd_soc_component *component =
    47			snd_soc_dapm_kcontrol_component(kcontrol);
    48		struct g12a_toacodec *priv = snd_soc_component_get_drvdata(component);
    49		struct snd_soc_dapm_context *dapm =
    50			snd_soc_dapm_kcontrol_dapm(kcontrol);
    51		struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
    52		unsigned int mclk_sel = GENMASK(2, 0);
    53		unsigned int mux, reg;
    54	
    55		if (ucontrol->value.enumerated.item[0] >= e->items)
    56			return -EINVAL;
    57	
    58		mux = snd_soc_enum_item_to_val(e, ucontrol->value.enumerated.item[0]);
    59		regmap_field_read(priv->field_dat_sel, &reg);
    60	
    61		if (mux == reg)
    62			return 0;
    63	
    64		/* Force disconnect of the mux while updating */
    65		snd_soc_dapm_mux_update_power(dapm, kcontrol, 0, NULL, NULL);
    66	
    67		regmap_field_write(priv->field_dat_sel, mux);
    68		regmap_field_write(priv->field_lrclk_sel, mux);
    69		regmap_field_write(priv->field_bclk_sel, mux);
    70	
    71		/*
    72		 * FIXME:
    73		 * On this soc, the glue gets the MCLK directly from the clock
    74		 * controller instead of going the through the TDM interface.
    75		 *
    76		 * Here we assume interface A uses clock A, etc ... While it is
    77		 * true for now, it could be different. Instead the glue should
    78		 * find out the clock used by the interface and select the same
    79		 * source. For that, we will need regmap backed clock mux which
    80		 * is a work in progress
    81		 */
    82		snd_soc_component_update_bits(component, e->reg, mclk_sel,
  > 83					      FIELD_PREP(mclk_sel, mux));
    84	
    85		snd_soc_dapm_mux_update_power(dapm, kcontrol, mux, e, NULL);
    86	
    87		return 1;
    88	}
    89	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux