lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <201606301332.lBDLAatr%fengguang.wu@intel.com>
Date:	Thu, 30 Jun 2016 13:38:49 +0800
From:	kbuild test robot <lkp@...el.com>
To:	Guenter Roeck <linux@...ck-us.net>
Cc:	kbuild-all@...org, Jean Delvare <jdelvare@...e.com>,
	linux-hwmon@...r.kernel.org, linux-kernel@...r.kernel.org,
	Guenter Roeck <linux@...ck-us.net>
Subject: Re: [PATCH v2 4/4] hwmon: (lm75) Convert to use regmap

Hi,

[auto build test ERROR on hwmon/hwmon-next]
[also build test ERROR on v4.7-rc5 next-20160629]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Guenter-Roeck/hwmon-lm75-Handle-cleanup-with-devm_add_action/20160630-114916
base:   https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
config: m32r-m32104ut_defconfig (attached as .config)
compiler: m32r-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m32r 

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

>> drivers/hwmon/lm75.c:198:21: error: variable 'lm75_regmap_config' has initializer but incomplete type
    static const struct regmap_config lm75_regmap_config = {
                        ^
>> drivers/hwmon/lm75.c:199:2: error: unknown field 'reg_bits' specified in initializer
     .reg_bits = 8,
     ^
>> drivers/hwmon/lm75.c:199:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:199:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:200:2: error: unknown field 'val_bits' specified in initializer
     .val_bits = 16,
     ^
   drivers/hwmon/lm75.c:200:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:200:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:201:2: error: unknown field 'max_register' specified in initializer
     .max_register = LM75_REG_MAX,
     ^
   drivers/hwmon/lm75.c:201:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:201:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:202:2: error: unknown field 'writeable_reg' specified in initializer
     .writeable_reg = lm75_is_writeable_reg,
     ^
   drivers/hwmon/lm75.c:202:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:202:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:203:2: error: unknown field 'volatile_reg' specified in initializer
     .volatile_reg = lm75_is_volatile_reg,
     ^
   drivers/hwmon/lm75.c:203:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:203:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:204:2: error: unknown field 'val_format_endian' specified in initializer
     .val_format_endian = REGMAP_ENDIAN_BIG,
     ^
>> drivers/hwmon/lm75.c:204:23: error: 'REGMAP_ENDIAN_BIG' undeclared here (not in a function)
     .val_format_endian = REGMAP_ENDIAN_BIG,
                          ^
   drivers/hwmon/lm75.c:204:2: warning: excess elements in struct initializer
     .val_format_endian = REGMAP_ENDIAN_BIG,
     ^
   drivers/hwmon/lm75.c:204:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:205:2: error: unknown field 'cache_type' specified in initializer
     .cache_type = REGCACHE_RBTREE,
     ^
   drivers/hwmon/lm75.c:205:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:205:2: warning: (near initialization for 'lm75_regmap_config')
>> drivers/hwmon/lm75.c:206:2: error: unknown field 'use_single_rw' specified in initializer
     .use_single_rw = true,
     ^
   drivers/hwmon/lm75.c:206:2: warning: excess elements in struct initializer
   drivers/hwmon/lm75.c:206:2: warning: (near initialization for 'lm75_regmap_config')
   drivers/hwmon/lm75.c: In function 'lm75_probe':
>> drivers/hwmon/lm75.c:238:2: error: implicit declaration of function 'devm_regmap_init_i2c' [-Werror=implicit-function-declaration]
     data->regmap = devm_regmap_init_i2c(client, &lm75_regmap_config);
     ^
>> drivers/hwmon/lm75.c:238:15: warning: assignment makes pointer from integer without a cast
     data->regmap = devm_regmap_init_i2c(client, &lm75_regmap_config);
                  ^
   cc1: some warnings being treated as errors

vim +/lm75_regmap_config +198 drivers/hwmon/lm75.c

   192	
   193	static bool lm75_is_volatile_reg(struct device *dev, unsigned int reg)
   194	{
   195		return reg == LM75_REG_TEMP;
   196	}
   197	
 > 198	static const struct regmap_config lm75_regmap_config = {
 > 199		.reg_bits = 8,
 > 200		.val_bits = 16,
 > 201		.max_register = LM75_REG_MAX,
 > 202		.writeable_reg = lm75_is_writeable_reg,
 > 203		.volatile_reg = lm75_is_volatile_reg,
 > 204		.val_format_endian = REGMAP_ENDIAN_BIG,
 > 205		.cache_type = REGCACHE_RBTREE,
 > 206		.use_single_rw = true,
   207	};
   208	
   209	static void lm75_remove(void *data)
   210	{
   211		struct lm75_data *lm75 = data;
   212		struct i2c_client *client = lm75->client;
   213	
   214		i2c_smbus_write_byte_data(client, LM75_REG_CONF, lm75->orig_conf);
   215	}
   216	
   217	static int
   218	lm75_probe(struct i2c_client *client, const struct i2c_device_id *id)
   219	{
   220		struct device *dev = &client->dev;
   221		struct device *hwmon_dev;
   222		struct lm75_data *data;
   223		int status;
   224		u8 set_mask, clr_mask;
   225		int new;
   226		enum lm75_type kind = id->driver_data;
   227	
   228		if (!i2c_check_functionality(client->adapter,
   229				I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA))
   230			return -EIO;
   231	
   232		data = devm_kzalloc(dev, sizeof(struct lm75_data), GFP_KERNEL);
   233		if (!data)
   234			return -ENOMEM;
   235	
   236		data->client = client;
   237	
 > 238		data->regmap = devm_regmap_init_i2c(client, &lm75_regmap_config);
   239		if (IS_ERR(data->regmap))
   240			return PTR_ERR(data->regmap);
   241	

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

Download attachment ".config.gz" of type "application/octet-stream" (10704 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ