drivers/hwmon/aspeed-pwm-tacho.c:337:21: error: variable 'aspeed_pwm_tacho_regmap_config' has initializer but incomplete type

From: kbuild test robot
Date: Sat May 27 2017 - 01:43:07 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-n0-05271314 (attached as .config)
compiler: gcc-4.8 (Debian 4.8.4-1) 4.8.4
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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:338:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:339:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:340:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:341:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:341:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:342:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:343:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
>> 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:2: warning: excess elements in struct initializer [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c:344:2: warning: (near initialization for 'aspeed_pwm_tacho_regmap_config') [enabled by default]
drivers/hwmon/aspeed-pwm-tacho.c: In function 'aspeed_pwm_tacho_probe':
>> drivers/hwmon/aspeed-pwm-tacho.c:783:2: 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 [enabled by default]
priv->regmap = devm_regmap_init(dev, NULL, (__force void *)regs,
^
cc1: some warnings being treated as errors

vim +/aspeed_pwm_tacho_regmap_config +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