Hi Sebastian, I love your patch! Yet something to improve: [auto build test ERROR on input/next] [also build test ERROR on v5.7-rc6 next-20200519] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Sebastian-Reichel/EXC3000-Updates/20200520-023207 base: https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next config: ia64-randconfig-r023-20200519 (attached as .config) compiler: ia64-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=ia64 If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All error/warnings (new ones prefixed by >>, old ones prefixed by <<): In file included from include/linux/kobject.h:20, from include/linux/device.h:17, from drivers/input/touchscreen/exc3000.c:11: >> drivers/input/touchscreen/exc3000.c:252:23: error: initialization of 'ssize_t (*)(struct device *, struct device_attribute *, char *)' {aka 'long int (*)(struct device *, struct device_attribute *, char *)'} from incompatible pointer type 'int (*)(struct device *, struct device_attribute *, char *)' [-Werror=incompatible-pointer-types] 252 | static DEVICE_ATTR_RO(fw_version); | ^~~~~~~~~~ include/linux/sysfs.h:117:10: note: in definition of macro '__ATTR_RO' 117 | .show = _name##_show, | ^~~~~ >> drivers/input/touchscreen/exc3000.c:252:8: note: in expansion of macro 'DEVICE_ATTR_RO' 252 | static DEVICE_ATTR_RO(fw_version); | ^~~~~~~~~~~~~~ drivers/input/touchscreen/exc3000.c:252:23: note: (near initialization for 'dev_attr_fw_version.show') 252 | static DEVICE_ATTR_RO(fw_version); | ^~~~~~~~~~ include/linux/sysfs.h:117:10: note: in definition of macro '__ATTR_RO' 117 | .show = _name##_show, | ^~~~~ >> drivers/input/touchscreen/exc3000.c:252:8: note: in expansion of macro 'DEVICE_ATTR_RO' 252 | static DEVICE_ATTR_RO(fw_version); | ^~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +252 drivers/input/touchscreen/exc3000.c 222 223 static int fw_version_show(struct device *dev, 224 struct device_attribute *attr, char *buf) 225 { 226 struct exc3000_data *data = dev_get_drvdata(dev); 227 static const u8 request[68] = { 228 0x67, 0x00, 0x42, 0x00, 0x03, 0x01, 'D', 0x00 229 }; 230 struct i2c_client *client = data->client; 231 int err; 232 233 mutex_lock(&data->query_lock); 234 235 data->query_result = -ETIMEDOUT; 236 reinit_completion(&data->wait_event); 237 238 err = i2c_master_send(client, request, sizeof(request)); 239 if (err < 0) { 240 mutex_unlock(&data->query_lock); 241 return err; 242 } 243 244 wait_for_completion_interruptible_timeout(&data->wait_event, 1*HZ); 245 mutex_unlock(&data->query_lock); 246 247 if (data->query_result < 0) 248 return data->query_result; 249 250 return sprintf(buf, "%s\n", data->fw_version); 251 } > 252 static DEVICE_ATTR_RO(fw_version); 253 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org