Re: [PATCH 1/2] iio: chemical: bme680: Add device-tree support
From: kbuild test robot
Date: Sun Jan 13 2019 - 18:10:19 EST
Hi Sebastien,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on iio/togreg]
[also build test ERROR on v5.0-rc1 next-20190111]
[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/Sebastien-Bourdelin/iio-chemical-bme680-Add-device-tree-support/20190114-063618
base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
config: x86_64-randconfig-x013-201902 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All error/warnings (new ones prefixed by >>):
In file included from include/linux/acpi.h:41:0,
from drivers/iio/chemical/bme680_i2c.c:14:
>> include/linux/module.h:213:1: error: expected ',' or ';' before 'extern'
extern typeof(name) __mod_##type##__##name##_device_table \
^
>> drivers/iio/chemical/bme680_i2c.c:77:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
MODULE_DEVICE_TABLE(of, bme680_of_i2c_match);
^~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/acpi.h:41:0,
from drivers/iio//chemical/bme680_i2c.c:14:
>> include/linux/module.h:213:1: error: expected ',' or ';' before 'extern'
extern typeof(name) __mod_##type##__##name##_device_table \
^
drivers/iio//chemical/bme680_i2c.c:77:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
MODULE_DEVICE_TABLE(of, bme680_of_i2c_match);
^~~~~~~~~~~~~~~~~~~
vim +/MODULE_DEVICE_TABLE +77 drivers/iio/chemical/bme680_i2c.c
> 14 #include <linux/acpi.h>
15 #include <linux/i2c.h>
16 #include <linux/module.h>
17 #include <linux/regmap.h>
18
19 #include "bme680.h"
20
21 static int bme680_i2c_probe(struct i2c_client *client,
22 const struct i2c_device_id *id)
23 {
24 struct regmap *regmap;
25 const char *name = NULL;
26 unsigned int val;
27 int ret;
28
29 regmap = devm_regmap_init_i2c(client, &bme680_regmap_config);
30 if (IS_ERR(regmap)) {
31 dev_err(&client->dev, "Failed to register i2c regmap %d\n",
32 (int)PTR_ERR(regmap));
33 return PTR_ERR(regmap);
34 }
35
36 ret = regmap_write(regmap, BME680_REG_SOFT_RESET_I2C,
37 BME680_CMD_SOFTRESET);
38 if (ret < 0) {
39 dev_err(&client->dev, "Failed to reset chip\n");
40 return ret;
41 }
42
43 ret = regmap_read(regmap, BME680_REG_CHIP_I2C_ID, &val);
44 if (ret < 0) {
45 dev_err(&client->dev, "Error reading I2C chip ID\n");
46 return ret;
47 }
48
49 if (val != BME680_CHIP_ID_VAL) {
50 dev_err(&client->dev, "Wrong chip ID, got %x expected %x\n",
51 val, BME680_CHIP_ID_VAL);
52 return -ENODEV;
53 }
54
55 if (id)
56 name = id->name;
57
58 return bme680_core_probe(&client->dev, regmap, name);
59 }
60
61 static const struct i2c_device_id bme680_i2c_id[] = {
62 {"bme680", 0},
63 {},
64 };
65 MODULE_DEVICE_TABLE(i2c, bme680_i2c_id);
66
67 static const struct acpi_device_id bme680_acpi_match[] = {
68 {"BME0680", 0},
69 {},
70 };
71 MODULE_DEVICE_TABLE(acpi, bme680_acpi_match);
72
73 static const struct of_device_id bme680_of_i2c_match[] = {
74 { .compatible = "bosch,bme680", },
75 {},
76 }
> 77 MODULE_DEVICE_TABLE(of, bme680_of_i2c_match);
78
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip