Messages in this thread | | | Date | Fri, 23 Mar 2018 18:20:56 +0800 | From | kbuild test robot <> | Subject | Re: [PATCH 2/2] nvmem: Add RAVE SP EEPROM driver |
| |
Hi Andrey,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master] [also build test ERROR on v4.16-rc6 next-20180322] [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/Andrey-Smirnov/dt-bindings-nvmem-Add-binding-for-RAVE-SP-EEPROM-driver/20180323-130858 config: sh-allmodconfig (attached as .config) compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.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 make.cross ARCH=sh
Note: the linux-review/Andrey-Smirnov/dt-bindings-nvmem-Add-binding-for-RAVE-SP-EEPROM-driver/20180323-130858 HEAD c74df185f384be5ad59649d893da92e2df54b967 builds fine. It only hurts bisectibility.
All errors (new ones prefixed by >>):
drivers/nvmem/rave-sp-eeprom.c: In function 'rave_sp_eeprom_probe': >> drivers/nvmem/rave-sp-eeprom.c:315:13: error: 'SZ_8K' undeclared (first use in this function) if (size > SZ_8K) ^~~~~ drivers/nvmem/rave-sp-eeprom.c:315:13: note: each undeclared identifier is reported only once for each function it appears in drivers/nvmem/rave-sp-eeprom.c:332:10: error: implicit declaration of function 'devm_nvmem_register'; did you mean 'nvmem_register'? [-Werror=implicit-function-declaration] nvmem = devm_nvmem_register(dev, &config); ^~~~~~~~~~~~~~~~~~~ nvmem_register drivers/nvmem/rave-sp-eeprom.c:332:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion] nvmem = devm_nvmem_register(dev, &config); ^ cc1: some warnings being treated as errors
vim +/SZ_8K +315 drivers/nvmem/rave-sp-eeprom.c
281 282 static int rave_sp_eeprom_probe(struct platform_device *pdev) 283 { 284 struct device *dev = &pdev->dev; 285 struct rave_sp *sp = dev_get_drvdata(dev->parent); 286 struct device_node *np = dev->of_node; 287 struct nvmem_config config = { 0 }; 288 struct rave_sp_eeprom *eeprom; 289 struct nvmem_device *nvmem; 290 u32 reg[2], size; 291 292 if (of_property_read_u32_array(np, "reg", reg, ARRAY_SIZE(reg))) { 293 dev_err(dev, "Failed to parse \"reg\" property\n"); 294 return -EINVAL; 295 } 296 297 size = reg[1]; 298 /* 299 * Per ICD, we have no more than 2 bytes to specify EEPROM 300 * page. 301 */ 302 if (size > U16_MAX * RAVE_SP_EEPROM_PAGE_SIZE) { 303 dev_err(dev, "Specified size is too big\n"); 304 return -EINVAL; 305 } 306 307 eeprom = devm_kzalloc(dev, sizeof(*eeprom), GFP_KERNEL); 308 if (!eeprom) 309 return -ENOMEM; 310 311 eeprom->address = reg[0]; 312 eeprom->sp = sp; 313 eeprom->dev = dev; 314 > 315 if (size > SZ_8K) 316 eeprom->header_size = RAVE_SP_EEPROM_HEADER_BIG; 317 else 318 eeprom->header_size = RAVE_SP_EEPROM_HEADER_SMALL; 319 320 mutex_init(&eeprom->mutex); 321 322 config.id = -1; 323 config.name = dev->of_node->name; 324 config.priv = eeprom; 325 config.dev = dev; 326 config.size = size; 327 config.reg_read = rave_sp_eeprom_reg_read; 328 config.reg_write = rave_sp_eeprom_reg_write; 329 config.word_size = 1; 330 config.stride = 1; 331 332 nvmem = devm_nvmem_register(dev, &config); 333 334 return PTR_ERR_OR_ZERO(nvmem); 335 } 336
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation [unhandled content-type:application/gzip] | |