CC: [email protected] In-Reply-To: <[email protected]> References: <[email protected]> TO: Andrew Jeffery <[email protected]> TO: [email protected] TO: [email protected] TO: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected]
Hi Andrew, I love your patch! Perhaps something to improve: [auto build test WARNING on char-misc/char-misc-testing] [also build test WARNING on robh/for-next linux/master linus/master v5.13-rc5 next-20210608] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Andrew-Jeffery/ipmi-Allow-raw-access-to-KCS-devices/20210608-185151 base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 603e4922f1c81fc2ed3a87b4f91a8d3aafc7e093 :::::: branch date: 6 hours ago :::::: commit date: 6 hours ago compiler: sh4-linux-gcc (GCC) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> cppcheck possible warnings: (new ones prefixed by >>, may not real problems) >> drivers/char/ipmi/kcs_bmc_aspeed.c:345:46: warning: Either the condition >> 'channel<0' is redundant, otherwise there is negative array index -1. >> [negativeIndex] kcs_bmc->ioreg = ast_kcs_bmc_ioregs[channel - 1]; ^ drivers/char/ipmi/kcs_bmc_aspeed.c:338:14: note: Assuming that condition 'channel<0' is not redundant if (channel < 0) ^ drivers/char/ipmi/kcs_bmc_aspeed.c:345:46: note: Negative array index kcs_bmc->ioreg = ast_kcs_bmc_ioregs[channel - 1]; ^ vim +345 drivers/char/ipmi/kcs_bmc_aspeed.c 09f5f680707e47 Andrew Jeffery 2019-12-16 316 09f5f680707e47 Andrew Jeffery 2019-12-16 317 static int aspeed_kcs_probe(struct platform_device *pdev) 09f5f680707e47 Andrew Jeffery 2019-12-16 318 { 15f2c02f7bddbc Andrew Jeffery 2021-06-08 319 const struct aspeed_kcs_of_ops *ops; 09f5f680707e47 Andrew Jeffery 2019-12-16 320 struct device *dev = &pdev->dev; 15f2c02f7bddbc Andrew Jeffery 2021-06-08 321 struct aspeed_kcs_bmc *priv; 09f5f680707e47 Andrew Jeffery 2019-12-16 322 struct kcs_bmc *kcs_bmc; 09f5f680707e47 Andrew Jeffery 2019-12-16 323 struct device_node *np; 15f2c02f7bddbc Andrew Jeffery 2021-06-08 324 int rc, channel, addr; 09f5f680707e47 Andrew Jeffery 2019-12-16 325 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 326 np = dev->of_node->parent; 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 327 if (!of_device_is_compatible(np, "aspeed,ast2400-lpc-v2") && 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 328 !of_device_is_compatible(np, "aspeed,ast2500-lpc-v2") && 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 329 !of_device_is_compatible(np, "aspeed,ast2600-lpc-v2")) { 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 330 dev_err(dev, "unsupported LPC device binding\n"); 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 331 return -ENODEV; 8f88156f82ea4c Chia-Wei, Wang 2021-03-19 332 } 15f2c02f7bddbc Andrew Jeffery 2021-06-08 333 ops = of_device_get_match_data(&pdev->dev); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 334 if (!ops) 09f5f680707e47 Andrew Jeffery 2019-12-16 335 return -EINVAL; 09f5f680707e47 Andrew Jeffery 2019-12-16 336 15f2c02f7bddbc Andrew Jeffery 2021-06-08 337 channel = ops->get_channel(pdev); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 338 if (channel < 0) 15f2c02f7bddbc Andrew Jeffery 2021-06-08 339 return channel; 15f2c02f7bddbc Andrew Jeffery 2021-06-08 340 15f2c02f7bddbc Andrew Jeffery 2021-06-08 341 kcs_bmc = kcs_bmc_alloc(&pdev->dev, sizeof(struct aspeed_kcs_bmc), channel); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 342 if (!kcs_bmc) 15f2c02f7bddbc Andrew Jeffery 2021-06-08 343 return -ENOMEM; 09f5f680707e47 Andrew Jeffery 2019-12-16 344 15f2c02f7bddbc Andrew Jeffery 2021-06-08 @345 kcs_bmc->ioreg = ast_kcs_bmc_ioregs[channel - 1]; be2ed207e37453 Haiyue Wang 2018-02-02 346 kcs_bmc->io_inputb = aspeed_kcs_inb; be2ed207e37453 Haiyue Wang 2018-02-02 347 kcs_bmc->io_outputb = aspeed_kcs_outb; be2ed207e37453 Haiyue Wang 2018-02-02 348 15f2c02f7bddbc Andrew Jeffery 2021-06-08 349 addr = ops->get_io_address(pdev); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 350 if (addr < 0) 15f2c02f7bddbc Andrew Jeffery 2021-06-08 351 return addr; 15f2c02f7bddbc Andrew Jeffery 2021-06-08 352 15f2c02f7bddbc Andrew Jeffery 2021-06-08 353 priv = kcs_bmc_priv(kcs_bmc); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 354 priv->map = syscon_node_to_regmap(pdev->dev.parent->of_node); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 355 if (IS_ERR(priv->map)) { 15f2c02f7bddbc Andrew Jeffery 2021-06-08 356 dev_err(&pdev->dev, "Couldn't get regmap\n"); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 357 return -ENODEV; 15f2c02f7bddbc Andrew Jeffery 2021-06-08 358 } 15f2c02f7bddbc Andrew Jeffery 2021-06-08 359 15f2c02f7bddbc Andrew Jeffery 2021-06-08 360 aspeed_kcs_set_address(kcs_bmc, addr); 15f2c02f7bddbc Andrew Jeffery 2021-06-08 361 af6432c76a13ef Andrew Jeffery 2019-12-16 362 rc = aspeed_kcs_config_irq(kcs_bmc, pdev); af6432c76a13ef Andrew Jeffery 2019-12-16 363 if (rc) af6432c76a13ef Andrew Jeffery 2019-12-16 364 return rc; af6432c76a13ef Andrew Jeffery 2019-12-16 365 be2ed207e37453 Haiyue Wang 2018-02-02 366 dev_set_drvdata(dev, kcs_bmc); be2ed207e37453 Haiyue Wang 2018-02-02 367 be2ed207e37453 Haiyue Wang 2018-02-02 368 aspeed_kcs_enable_channel(kcs_bmc, true); be2ed207e37453 Haiyue Wang 2018-02-02 369 be2ed207e37453 Haiyue Wang 2018-02-02 370 rc = misc_register(&kcs_bmc->miscdev); be2ed207e37453 Haiyue Wang 2018-02-02 371 if (rc) { be2ed207e37453 Haiyue Wang 2018-02-02 372 dev_err(dev, "Unable to register device\n"); be2ed207e37453 Haiyue Wang 2018-02-02 373 return rc; be2ed207e37453 Haiyue Wang 2018-02-02 374 } be2ed207e37453 Haiyue Wang 2018-02-02 375 09f5f680707e47 Andrew Jeffery 2019-12-16 376 dev_dbg(&pdev->dev, 09f5f680707e47 Andrew Jeffery 2019-12-16 377 "Probed KCS device %d (IDR=0x%x, ODR=0x%x, STR=0x%x)\n", 09f5f680707e47 Andrew Jeffery 2019-12-16 378 kcs_bmc->channel, kcs_bmc->ioreg.idr, kcs_bmc->ioreg.odr, 09f5f680707e47 Andrew Jeffery 2019-12-16 379 kcs_bmc->ioreg.str); be2ed207e37453 Haiyue Wang 2018-02-02 380 be2ed207e37453 Haiyue Wang 2018-02-02 381 return 0; be2ed207e37453 Haiyue Wang 2018-02-02 382 } be2ed207e37453 Haiyue Wang 2018-02-02 383 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected] _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
