Re: [PATCH] iio: imu: Add initial support for Bosch BMI160

From: kbuild test robot
Date: Fri Apr 01 2016 - 14:04:23 EST


Hi Daniel,

[auto build test WARNING on iio/togreg]
[also build test WARNING on v4.6-rc1 next-20160401]
[if your patch is applied to the wrong git tree, please drop us a note to help improving the system]

url: https://github.com/0day-ci/linux/commits/Daniel-Baluta/iio-imu-Add-initial-support-for-Bosch-BMI160/20160401-203058
base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
config: parisc-allyesconfig (attached as .config)
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=parisc

All warnings (new ones prefixed by >>):

drivers/iio/imu/bmi160/bmi160_i2c.c:57:1: warning: data definition has no type or storage class
MODULE_DEVICE_TABLE(i2c, bmi160_i2c_id);
^
drivers/iio/imu/bmi160/bmi160_i2c.c:57:1: error: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]
drivers/iio/imu/bmi160/bmi160_i2c.c:57:1: warning: parameter names (without types) in function declaration
drivers/iio/imu/bmi160/bmi160_i2c.c:63:1: warning: data definition has no type or storage class
MODULE_DEVICE_TABLE(acpi, bmi160_acpi_match);
^
drivers/iio/imu/bmi160/bmi160_i2c.c:63:1: error: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]
drivers/iio/imu/bmi160/bmi160_i2c.c:63:1: warning: parameter names (without types) in function declaration
In file included from include/linux/i2c.h:30:0,
from drivers/iio/imu/bmi160/bmi160_i2c.c:14:
include/linux/device.h:1332:1: warning: data definition has no type or storage class
module_init(__driver##_init); \
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
include/linux/device.h:1332:1: error: type defaults to 'int' in declaration of 'module_init' [-Werror=implicit-int]
module_init(__driver##_init); \
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/kobject.h:20,
from include/linux/device.h:17,
from include/linux/i2c.h:30,
from drivers/iio/imu/bmi160/bmi160_i2c.c:14:
include/linux/export.h:36:30: warning: parameter names (without types) in function declaration
#define THIS_MODULE ((struct module *)0)
^
>> include/linux/i2c.h:610:22: note: in expansion of macro 'THIS_MODULE'
i2c_register_driver(THIS_MODULE, driver)
^
>> include/linux/device.h:1330:9: note: in expansion of macro 'i2c_add_driver'
return __register(&(__driver) , ##__VA_ARGS__); \
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
In file included from include/linux/i2c.h:30:0,
from drivers/iio/imu/bmi160/bmi160_i2c.c:14:
include/linux/device.h:1337:1: warning: data definition has no type or storage class
module_exit(__driver##_exit);
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
include/linux/device.h:1337:1: error: type defaults to 'int' in declaration of 'module_exit' [-Werror=implicit-int]
module_exit(__driver##_exit);
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/kobject.h:20,
from include/linux/device.h:17,
from include/linux/i2c.h:30,
from drivers/iio/imu/bmi160/bmi160_i2c.c:14:
include/linux/export.h:36:30: warning: parameter names (without types) in function declaration
#define THIS_MODULE ((struct module *)0)
^
>> include/linux/i2c.h:610:22: note: in expansion of macro 'THIS_MODULE'
i2c_register_driver(THIS_MODULE, driver)
^
>> include/linux/device.h:1330:9: note: in expansion of macro 'i2c_add_driver'
return __register(&(__driver) , ##__VA_ARGS__); \
^
include/linux/i2c.h:666:2: note: in expansion of macro 'module_driver'
module_driver(__i2c_driver, i2c_add_driver, \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
drivers/iio/imu/bmi160/bmi160_i2c.c:77:15: error: expected declaration specifiers or '...' before string constant
MODULE_AUTHOR("Daniel Baluta <daniel.baluta@xxxxxxxxx>");
^
drivers/iio/imu/bmi160/bmi160_i2c.c:78:20: error: expected declaration specifiers or '...' before string constant
MODULE_DESCRIPTION("BMI160 I2C driver");
^
drivers/iio/imu/bmi160/bmi160_i2c.c:79:16: error: expected declaration specifiers or '...' before string constant
MODULE_LICENSE("GPL v2");
^
In file included from include/linux/i2c.h:30:0,
from drivers/iio/imu/bmi160/bmi160_i2c.c:14:
drivers/iio/imu/bmi160/bmi160_i2c.c:75:19: warning: 'bmi160_i2c_driver_init' defined but not used [-Wunused-function]
module_i2c_driver(bmi160_i2c_driver);
^
include/linux/device.h:1328:19: note: in definition of macro 'module_driver'
static int __init __driver##_init(void) \
^
drivers/iio/imu/bmi160/bmi160_i2c.c:75:1: note: in expansion of macro 'module_i2c_driver'
module_i2c_driver(bmi160_i2c_driver);
^
cc1: some warnings being treated as errors
--
drivers/iio/imu/bmi160/bmi160_spi.c:50:1: warning: data definition has no type or storage class
MODULE_DEVICE_TABLE(spi, bmi160_spi_id);
^
drivers/iio/imu/bmi160/bmi160_spi.c:50:1: error: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]
drivers/iio/imu/bmi160/bmi160_spi.c:50:1: warning: parameter names (without types) in function declaration
drivers/iio/imu/bmi160/bmi160_spi.c:56:1: warning: data definition has no type or storage class
MODULE_DEVICE_TABLE(acpi, bmi160_acpi_match);
^
drivers/iio/imu/bmi160/bmi160_spi.c:56:1: error: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]
drivers/iio/imu/bmi160/bmi160_spi.c:56:1: warning: parameter names (without types) in function declaration
In file included from include/linux/spi/spi.h:18:0,
from drivers/iio/imu/bmi160/bmi160_spi.c:11:
include/linux/device.h:1332:1: warning: data definition has no type or storage class
module_init(__driver##_init); \
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
include/linux/device.h:1332:1: error: type defaults to 'int' in declaration of 'module_init' [-Werror=implicit-int]
module_init(__driver##_init); \
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/kobject.h:20,
from include/linux/device.h:17,
from include/linux/spi/spi.h:18,
from drivers/iio/imu/bmi160/bmi160_spi.c:11:
include/linux/export.h:36:30: warning: parameter names (without types) in function declaration
#define THIS_MODULE ((struct module *)0)
^
>> include/linux/spi/spi.h:272:24: note: in expansion of macro 'THIS_MODULE'
__spi_register_driver(THIS_MODULE, driver)
^
>> include/linux/device.h:1330:9: note: in expansion of macro 'spi_register_driver'
return __register(&(__driver) , ##__VA_ARGS__); \
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
In file included from include/linux/spi/spi.h:18:0,
from drivers/iio/imu/bmi160/bmi160_spi.c:11:
include/linux/device.h:1337:1: warning: data definition has no type or storage class
module_exit(__driver##_exit);
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
include/linux/device.h:1337:1: error: type defaults to 'int' in declaration of 'module_exit' [-Werror=implicit-int]
module_exit(__driver##_exit);
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
In file included from include/linux/linkage.h:6:0,
from include/linux/kernel.h:6,
from include/linux/list.h:8,
from include/linux/kobject.h:20,
from include/linux/device.h:17,
from include/linux/spi/spi.h:18,
from drivers/iio/imu/bmi160/bmi160_spi.c:11:
include/linux/export.h:36:30: warning: parameter names (without types) in function declaration
#define THIS_MODULE ((struct module *)0)
^
>> include/linux/spi/spi.h:272:24: note: in expansion of macro 'THIS_MODULE'
__spi_register_driver(THIS_MODULE, driver)
^
>> include/linux/device.h:1330:9: note: in expansion of macro 'spi_register_driver'
return __register(&(__driver) , ##__VA_ARGS__); \
^
include/linux/spi/spi.h:283:2: note: in expansion of macro 'module_driver'
module_driver(__spi_driver, spi_register_driver, \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
drivers/iio/imu/bmi160/bmi160_spi.c:69:15: error: expected declaration specifiers or '...' before string constant
MODULE_AUTHOR("Daniel Baluta <daniel.baluta@xxxxxxxxx");
^
drivers/iio/imu/bmi160/bmi160_spi.c:70:20: error: expected declaration specifiers or '...' before string constant
MODULE_DESCRIPTION("Bosch BMI160 SPI driver");
^
drivers/iio/imu/bmi160/bmi160_spi.c:71:16: error: expected declaration specifiers or '...' before string constant
MODULE_LICENSE("GPL v2");
^
In file included from include/linux/spi/spi.h:18:0,
from drivers/iio/imu/bmi160/bmi160_spi.c:11:
drivers/iio/imu/bmi160/bmi160_spi.c:67:19: warning: 'bmi160_spi_driver_init' defined but not used [-Wunused-function]
module_spi_driver(bmi160_spi_driver);
^
include/linux/device.h:1328:19: note: in definition of macro 'module_driver'
static int __init __driver##_init(void) \
^
drivers/iio/imu/bmi160/bmi160_spi.c:67:1: note: in expansion of macro 'module_spi_driver'
module_spi_driver(bmi160_spi_driver);
^
cc1: some warnings being treated as errors

vim +/THIS_MODULE +610 include/linux/i2c.h

c7036673 Hans Verkuil 2009-06-19 594
^1da177e Linus Torvalds 2005-04-16 595
^1da177e Linus Torvalds 2005-04-16 596 /* ----- functions exported by i2c.o */
^1da177e Linus Torvalds 2005-04-16 597
^1da177e Linus Torvalds 2005-04-16 598 /* administration...
^1da177e Linus Torvalds 2005-04-16 599 */
23af8400 Jean Delvare 2009-06-19 600 #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
^1da177e Linus Torvalds 2005-04-16 601 extern int i2c_add_adapter(struct i2c_adapter *);
71546300 Lars-Peter Clausen 2013-03-09 602 extern void i2c_del_adapter(struct i2c_adapter *);
6e13e641 David Brownell 2007-05-01 603 extern int i2c_add_numbered_adapter(struct i2c_adapter *);
^1da177e Linus Torvalds 2005-04-16 604
de59cf9e Greg Kroah-Hartman 2005-12-06 605 extern int i2c_register_driver(struct module *, struct i2c_driver *);
b3e82096 Jean Delvare 2007-05-01 606 extern void i2c_del_driver(struct i2c_driver *);
^1da177e Linus Torvalds 2005-04-16 607
eb5589a8 Paul Gortmaker 2011-05-27 608 /* use a define to avoid include chaining to get THIS_MODULE */
eb5589a8 Paul Gortmaker 2011-05-27 609 #define i2c_add_driver(driver) \
eb5589a8 Paul Gortmaker 2011-05-27 @610 i2c_register_driver(THIS_MODULE, driver)
de59cf9e Greg Kroah-Hartman 2005-12-06 611
e48d3319 Jean Delvare 2008-01-27 612 extern struct i2c_client *i2c_use_client(struct i2c_client *client);
e48d3319 Jean Delvare 2008-01-27 613 extern void i2c_release_client(struct i2c_client *client);
^1da177e Linus Torvalds 2005-04-16 614
^1da177e Linus Torvalds 2005-04-16 615 /* call the i2c_client->command() of all attached clients with
^1da177e Linus Torvalds 2005-04-16 616 * the given arguments */
^1da177e Linus Torvalds 2005-04-16 617 extern void i2c_clients_command(struct i2c_adapter *adap,
^1da177e Linus Torvalds 2005-04-16 618 unsigned int cmd, void *arg);

:::::: The code at line 610 was first introduced by commit
:::::: eb5589a8f0dab7e29021344228856339e6a1249c include: convert various register fcns to macros to avoid include chaining

:::::: TO: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
:::::: CC: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>

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

Attachment: .config.gz
Description: Binary data