[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202412011904.wH9p6YVx-lkp@intel.com>
Date: Sun, 1 Dec 2024 19:47:27 +0800
From: kernel test robot <lkp@...el.com>
To: Eugen Hristev <eugen.hristev@...rochip.com>
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
linux-kernel@...r.kernel.org,
Jonathan Cameron <Jonathan.Cameron@...wei.com>
Subject: drivers/iio/adc/at91-sama5d2_adc.c:374: warning: Excess struct
member 'adc_channels' description in 'at91_adc_platform'
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: bcc8eda6d34934d80b96adb8dc4ff5dfc632a53a
commit: 8940de2e48902e95b588b6244d5a1b61a4d75c4a iio: adc: at91-sama5d2_adc: convert to platform specific data structures
date: 3 years, 3 months ago
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20241201/202412011904.wH9p6YVx-lkp@intel.com/config)
compiler: clang version 19.1.3 (https://github.com/llvm/llvm-project ab51eccf88f5321e7c60591c5546b254b6afab99)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241201/202412011904.wH9p6YVx-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 <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202412011904.wH9p6YVx-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/iio/adc/at91-sama5d2_adc.c:374: warning: Excess struct member 'adc_channels' description in 'at91_adc_platform'
vim +374 drivers/iio/adc/at91-sama5d2_adc.c
269
270 #define AT91_SAMA5D2_CHAN_SINGLE(index, num, addr) \
271 { \
272 .type = IIO_VOLTAGE, \
273 .channel = num, \
274 .address = addr, \
275 .scan_index = index, \
276 .scan_type = { \
277 .sign = 'u', \
278 .realbits = 14, \
279 .storagebits = 16, \
280 }, \
281 .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), \
282 .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE), \
283 .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ)|\
284 BIT(IIO_CHAN_INFO_OVERSAMPLING_RATIO), \
285 .datasheet_name = "CH"#num, \
286 .indexed = 1, \
287 }
288
289 #define AT91_SAMA5D2_CHAN_DIFF(index, num, num2, addr) \
290 { \
291 .type = IIO_VOLTAGE, \
292 .differential = 1, \
293 .channel = num, \
294 .channel2 = num2, \
295 .address = addr, \
296 .scan_index = index, \
297 .scan_type = { \
298 .sign = 's', \
299 .realbits = 14, \
300 .storagebits = 16, \
301 }, \
302 .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), \
303 .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE), \
304 .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ)|\
305 BIT(IIO_CHAN_INFO_OVERSAMPLING_RATIO), \
306 .datasheet_name = "CH"#num"-CH"#num2, \
307 .indexed = 1, \
308 }
309
310 #define AT91_SAMA5D2_CHAN_TOUCH(num, name, mod) \
311 { \
312 .type = IIO_POSITIONRELATIVE, \
313 .modified = 1, \
314 .channel = num, \
315 .channel2 = mod, \
316 .scan_index = num, \
317 .scan_type = { \
318 .sign = 'u', \
319 .realbits = 12, \
320 .storagebits = 16, \
321 }, \
322 .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), \
323 .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ)|\
324 BIT(IIO_CHAN_INFO_OVERSAMPLING_RATIO), \
325 .datasheet_name = name, \
326 }
327 #define AT91_SAMA5D2_CHAN_PRESSURE(num, name) \
328 { \
329 .type = IIO_PRESSURE, \
330 .channel = num, \
331 .scan_index = num, \
332 .scan_type = { \
333 .sign = 'u', \
334 .realbits = 12, \
335 .storagebits = 16, \
336 }, \
337 .info_mask_separate = BIT(IIO_CHAN_INFO_RAW), \
338 .info_mask_shared_by_all = BIT(IIO_CHAN_INFO_SAMP_FREQ)|\
339 BIT(IIO_CHAN_INFO_OVERSAMPLING_RATIO), \
340 .datasheet_name = name, \
341 }
342
343 #define at91_adc_readl(st, reg) \
344 readl_relaxed((st)->base + (st)->soc_info.platform->layout->reg)
345 #define at91_adc_read_chan(st, reg) \
346 readl_relaxed((st)->base + reg)
347 #define at91_adc_writel(st, reg, val) \
348 writel_relaxed(val, (st)->base + (st)->soc_info.platform->layout->reg)
349
350 /**
351 * struct at91_adc_platform - at91-sama5d2 platform information struct
352 * @layout: pointer to the reg layout struct
353 * @adc_channels: pointer to an array of channels for registering in
354 * the iio subsystem
355 * @nr_channels: number of physical channels available
356 * @touch_chan_x: index of the touchscreen X channel
357 * @touch_chan_y: index of the touchscreen Y channel
358 * @touch_chan_p: index of the touchscreen P channel
359 * @max_channels: number of total channels
360 * @max_index: highest channel index (highest index may be higher
361 * than the total channel number)
362 * @hw_trig_cnt: number of possible hardware triggers
363 */
364 struct at91_adc_platform {
365 const struct at91_adc_reg_layout *layout;
366 const struct iio_chan_spec (*adc_channels)[];
367 unsigned int nr_channels;
368 unsigned int touch_chan_x;
369 unsigned int touch_chan_y;
370 unsigned int touch_chan_p;
371 unsigned int max_channels;
372 unsigned int max_index;
373 unsigned int hw_trig_cnt;
> 374 };
375
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists