drivers/hwmon/aspeed-pwm-tacho.c:337:35: error: storage size of 'aspeed_pwm_tacho_regmap_config' isn't known

From: kbuild test robot
Date: Sat May 27 2017 - 06:31:32 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c86daad2c25bfd4a33d48b7691afaa96d9c5ab46
commit: 2d7a548a3eff382da5cd743670693b7657327714 drivers: hwmon: Support for ASPEED PWM/Fan tach
date: 7 weeks ago
config: x86_64-randconfig-s3-05271727 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 2d7a548a3eff382da5cd743670693b7657327714
# save the attached .config to linux build tree
make ARCH=x86_64

All error/warnings (new ones prefixed by >>):

drivers/hwmon/aspeed-pwm-tacho.c:337:21: error: variable 'aspeed_pwm_tacho_regmap_config' has initializer but incomplete type
static const struct regmap_config aspeed_pwm_tacho_regmap_config = {
^~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:338:2: error: unknown field 'reg_bits' specified in initializer
.reg_bits = 32,
^
drivers/hwmon/aspeed-pwm-tacho.c:338:14: warning: excess elements in struct initializer
.reg_bits = 32,
^~
drivers/hwmon/aspeed-pwm-tacho.c:338:14: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c:339:2: error: unknown field 'val_bits' specified in initializer
.val_bits = 32,
^
drivers/hwmon/aspeed-pwm-tacho.c:339:14: warning: excess elements in struct initializer
.val_bits = 32,
^~
drivers/hwmon/aspeed-pwm-tacho.c:339:14: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c:340:2: error: unknown field 'reg_stride' specified in initializer
.reg_stride = 4,
^
drivers/hwmon/aspeed-pwm-tacho.c:340:16: warning: excess elements in struct initializer
.reg_stride = 4,
^
drivers/hwmon/aspeed-pwm-tacho.c:340:16: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c:341:2: error: unknown field 'max_register' specified in initializer
.max_register = ASPEED_PTCR_TYPEO_LIMIT,
^
drivers/hwmon/aspeed-pwm-tacho.c:46:34: warning: excess elements in struct initializer
#define ASPEED_PTCR_TYPEO_LIMIT 0x78
^
>> drivers/hwmon/aspeed-pwm-tacho.c:341:18: note: in expansion of macro 'ASPEED_PTCR_TYPEO_LIMIT'
.max_register = ASPEED_PTCR_TYPEO_LIMIT,
^~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:46:34: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
#define ASPEED_PTCR_TYPEO_LIMIT 0x78
^
>> drivers/hwmon/aspeed-pwm-tacho.c:341:18: note: in expansion of macro 'ASPEED_PTCR_TYPEO_LIMIT'
.max_register = ASPEED_PTCR_TYPEO_LIMIT,
^~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:342:2: error: unknown field 'reg_write' specified in initializer
.reg_write = regmap_aspeed_pwm_tacho_reg_write,
^
drivers/hwmon/aspeed-pwm-tacho.c:342:15: warning: excess elements in struct initializer
.reg_write = regmap_aspeed_pwm_tacho_reg_write,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:342:15: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c:343:2: error: unknown field 'reg_read' specified in initializer
.reg_read = regmap_aspeed_pwm_tacho_reg_read,
^
drivers/hwmon/aspeed-pwm-tacho.c:343:14: warning: excess elements in struct initializer
.reg_read = regmap_aspeed_pwm_tacho_reg_read,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:343:14: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c:344:2: error: unknown field 'fast_io' specified in initializer
.fast_io = true,
^
drivers/hwmon/aspeed-pwm-tacho.c:344:13: warning: excess elements in struct initializer
.fast_io = true,
^~~~
drivers/hwmon/aspeed-pwm-tacho.c:344:13: note: (near initialization for 'aspeed_pwm_tacho_regmap_config')
drivers/hwmon/aspeed-pwm-tacho.c: In function 'aspeed_pwm_tacho_probe':
drivers/hwmon/aspeed-pwm-tacho.c:783:17: error: implicit declaration of function 'devm_regmap_init' [-Werror=implicit-function-declaration]
priv->regmap = devm_regmap_init(dev, NULL, (__force void *)regs,
^~~~~~~~~~~~~~~~
drivers/hwmon/aspeed-pwm-tacho.c:783:15: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
priv->regmap = devm_regmap_init(dev, NULL, (__force void *)regs,
^
drivers/hwmon/aspeed-pwm-tacho.c: At top level:
>> drivers/hwmon/aspeed-pwm-tacho.c:337:35: error: storage size of 'aspeed_pwm_tacho_regmap_config' isn't known
static const struct regmap_config aspeed_pwm_tacho_regmap_config = {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +337 drivers/hwmon/aspeed-pwm-tacho.c

331 void __iomem *regs = (void __iomem *)context;
332
333 *val = readl(regs + reg);
334 return 0;
335 }
336
> 337 static const struct regmap_config aspeed_pwm_tacho_regmap_config = {
338 .reg_bits = 32,
339 .val_bits = 32,
> 340 .reg_stride = 4,
> 341 .max_register = ASPEED_PTCR_TYPEO_LIMIT,
342 .reg_write = regmap_aspeed_pwm_tacho_reg_write,
343 .reg_read = regmap_aspeed_pwm_tacho_reg_read,
> 344 .fast_io = true,
345 };
346
347 static void aspeed_set_clock_enable(struct regmap *regmap, bool val)

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip