Thread (1 message) 1 message, 1 author, 2025-10-28

Re: [PATCH v5 15/23] gpio: aspeed: Convert to common field_{get,prep}() helpers

From: kernel test robot <hidden>
Date: 2025-10-28 06:40:40
Also in: llvm, oe-kbuild-all

Hi Geert,

kernel test robot noticed the following build warnings:

[auto build test WARNING on jic23-iio/togreg]
[also build test WARNING on next-20251027]
[cannot apply to clk/clk-next geert-renesas-devel/next geert-renesas-drivers/renesas-clk linus/master v6.18-rc3]
[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/Geert-Uytterhoeven/clk-at91-pmc-undef-field_-get-prep-before-definition/20251028-025423
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
patch link:    https://lore.kernel.org/r/fbefa056d1e2cd13c52a0489b955c2b9442f0c9a.1761588465.git.geert%2Brenesas%40glider.be
patch subject: [PATCH v5 15/23] gpio: aspeed: Convert to common field_{get,prep}() helpers
config: x86_64-buildonly-randconfig-003-20251028 (https://download.01.org/0day-ci/archive/20251028/202510281414.DnejZh4n-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251028/202510281414.DnejZh4n-lkp@intel.com/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 [off-list ref]
| Closes: https://lore.kernel.org/oe-kbuild-all/202510281414.DnejZh4n-lkp@intel.com/ (local)

All warnings (new ones prefixed by >>):
quoted
drivers/gpio/gpio-aspeed.c:1161:44: warning: result of comparison of constant 18446744073709551615 with expression of type 'typeof (_Generic((mask), 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: (mask)))' (aka 'unsigned int') is always false [-Wtautological-constant-out-of-range-compare]
    1161 |                 write_val = (ioread32(addr) & ~(mask)) | field_prep(mask, val);
         |                                                          ^~~~~~~~~~~~~~~~~~~~~
   include/linux/bitfield.h:256:32: note: expanded from macro 'field_prep'
     256 |         (__builtin_constant_p(mask) ? FIELD_PREP(mask, val)             \
         |                                       ^~~~~~~~~~~~~~~~~~~~~
   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"); \
         |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
   include/linux/compiler_types.h:597:22: note: expanded from macro 'compiletime_assert'
     597 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |         ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:585:23: note: expanded from macro '_compiletime_assert'
     585 |         __compiletime_assert(condition, msg, prefix, suffix)
         |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:577:9: note: expanded from macro '__compiletime_assert'
     577 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   1 warning generated.


vim +1161 drivers/gpio/gpio-aspeed.c

b2e861bd1eaf4c Billy Tsai 2024-10-08  1152  
b2e861bd1eaf4c Billy Tsai 2024-10-08  1153  static void aspeed_g7_reg_bit_set(struct aspeed_gpio *gpio, unsigned int offset,
b2e861bd1eaf4c Billy Tsai 2024-10-08  1154  				  const enum aspeed_gpio_reg reg, bool val)
b2e861bd1eaf4c Billy Tsai 2024-10-08  1155  {
b2e861bd1eaf4c Billy Tsai 2024-10-08  1156  	u32 mask = aspeed_gpio_g7_reg_mask(reg);
b2e861bd1eaf4c Billy Tsai 2024-10-08  1157  	void __iomem *addr = gpio->base + GPIO_G7_CTRL_REG_OFFSET(offset);
b2e861bd1eaf4c Billy Tsai 2024-10-08  1158  	u32 write_val;
b2e861bd1eaf4c Billy Tsai 2024-10-08  1159  
b2e861bd1eaf4c Billy Tsai 2024-10-08  1160  	if (mask) {
b2e861bd1eaf4c Billy Tsai 2024-10-08 @1161  		write_val = (ioread32(addr) & ~(mask)) | field_prep(mask, val);
b2e861bd1eaf4c Billy Tsai 2024-10-08  1162  		iowrite32(write_val, addr);
b2e861bd1eaf4c Billy Tsai 2024-10-08  1163  	}
b2e861bd1eaf4c Billy Tsai 2024-10-08  1164  }
b2e861bd1eaf4c Billy Tsai 2024-10-08  1165  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help