CC: [email protected] CC: [email protected] TO: Alexandre Courbot <[email protected]> CC: Mauro Carvalho Chehab <[email protected]> CC: [email protected]
Hi Alexandre, First bad commit (maybe != root cause): tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: f55966571d5eb2876a11e48e798b4592fa1ffbb7 commit: cbd2dca74926c0e4610c40923cc786b732c9e8ef remoteproc: scp: add COMPILE_TEST dependency date: 10 months ago :::::: branch date: 23 hours ago :::::: commit date: 10 months ago config: openrisc-randconfig-m031-20210709 (attached as .config) compiler: or1k-linux-gcc (GCC) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> smatch warnings: drivers/remoteproc/mtk_scp.c:570 scp_probe() warn: missing error code 'ret' vim +/ret +570 drivers/remoteproc/mtk_scp.c 7017996951fde8 Pi-Hsun Shih 2019-11-12 515 63c13d61eafe46 Erin Lo 2019-11-12 516 static int scp_probe(struct platform_device *pdev) 63c13d61eafe46 Erin Lo 2019-11-12 517 { 63c13d61eafe46 Erin Lo 2019-11-12 518 struct device *dev = &pdev->dev; 63c13d61eafe46 Erin Lo 2019-11-12 519 struct device_node *np = dev->of_node; 63c13d61eafe46 Erin Lo 2019-11-12 520 struct mtk_scp *scp; 63c13d61eafe46 Erin Lo 2019-11-12 521 struct rproc *rproc; 63c13d61eafe46 Erin Lo 2019-11-12 522 struct resource *res; 63c13d61eafe46 Erin Lo 2019-11-12 523 char *fw_name = "scp.img"; 63c13d61eafe46 Erin Lo 2019-11-12 524 int ret, i; 63c13d61eafe46 Erin Lo 2019-11-12 525 63c13d61eafe46 Erin Lo 2019-11-12 526 rproc = rproc_alloc(dev, 63c13d61eafe46 Erin Lo 2019-11-12 527 np->name, 63c13d61eafe46 Erin Lo 2019-11-12 528 &scp_ops, 63c13d61eafe46 Erin Lo 2019-11-12 529 fw_name, 63c13d61eafe46 Erin Lo 2019-11-12 530 sizeof(*scp)); 63c13d61eafe46 Erin Lo 2019-11-12 531 if (!rproc) { 63c13d61eafe46 Erin Lo 2019-11-12 532 dev_err(dev, "unable to allocate remoteproc\n"); 63c13d61eafe46 Erin Lo 2019-11-12 533 return -ENOMEM; 63c13d61eafe46 Erin Lo 2019-11-12 534 } 63c13d61eafe46 Erin Lo 2019-11-12 535 63c13d61eafe46 Erin Lo 2019-11-12 536 scp = (struct mtk_scp *)rproc->priv; 63c13d61eafe46 Erin Lo 2019-11-12 537 scp->rproc = rproc; 63c13d61eafe46 Erin Lo 2019-11-12 538 scp->dev = dev; 63c13d61eafe46 Erin Lo 2019-11-12 539 platform_set_drvdata(pdev, scp); 63c13d61eafe46 Erin Lo 2019-11-12 540 63c13d61eafe46 Erin Lo 2019-11-12 541 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "sram"); 63c13d61eafe46 Erin Lo 2019-11-12 542 scp->sram_base = devm_ioremap_resource(dev, res); 63c13d61eafe46 Erin Lo 2019-11-12 543 if (IS_ERR((__force void *)scp->sram_base)) { 63c13d61eafe46 Erin Lo 2019-11-12 544 dev_err(dev, "Failed to parse and map sram memory\n"); 63c13d61eafe46 Erin Lo 2019-11-12 545 ret = PTR_ERR((__force void *)scp->sram_base); 63c13d61eafe46 Erin Lo 2019-11-12 546 goto free_rproc; 63c13d61eafe46 Erin Lo 2019-11-12 547 } 63c13d61eafe46 Erin Lo 2019-11-12 548 scp->sram_size = resource_size(res); 63c13d61eafe46 Erin Lo 2019-11-12 549 63c13d61eafe46 Erin Lo 2019-11-12 550 mutex_init(&scp->send_lock); 63c13d61eafe46 Erin Lo 2019-11-12 551 for (i = 0; i < SCP_IPI_MAX; i++) 63c13d61eafe46 Erin Lo 2019-11-12 552 mutex_init(&scp->ipi_desc[i].lock); 63c13d61eafe46 Erin Lo 2019-11-12 553 63c13d61eafe46 Erin Lo 2019-11-12 554 res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "cfg"); 63c13d61eafe46 Erin Lo 2019-11-12 555 scp->reg_base = devm_ioremap_resource(dev, res); 63c13d61eafe46 Erin Lo 2019-11-12 556 if (IS_ERR((__force void *)scp->reg_base)) { 63c13d61eafe46 Erin Lo 2019-11-12 557 dev_err(dev, "Failed to parse and map cfg memory\n"); 63c13d61eafe46 Erin Lo 2019-11-12 558 ret = PTR_ERR((__force void *)scp->reg_base); 63c13d61eafe46 Erin Lo 2019-11-12 559 goto destroy_mutex; 63c13d61eafe46 Erin Lo 2019-11-12 560 } 63c13d61eafe46 Erin Lo 2019-11-12 561 63c13d61eafe46 Erin Lo 2019-11-12 562 ret = scp_map_memory_region(scp); 63c13d61eafe46 Erin Lo 2019-11-12 563 if (ret) 63c13d61eafe46 Erin Lo 2019-11-12 564 goto destroy_mutex; 63c13d61eafe46 Erin Lo 2019-11-12 565 63c13d61eafe46 Erin Lo 2019-11-12 566 scp->clk = devm_clk_get(dev, "main"); 63c13d61eafe46 Erin Lo 2019-11-12 567 if (IS_ERR(scp->clk)) { 63c13d61eafe46 Erin Lo 2019-11-12 568 dev_err(dev, "Failed to get clock\n"); 63c13d61eafe46 Erin Lo 2019-11-12 569 ret = PTR_ERR(scp->clk); 63c13d61eafe46 Erin Lo 2019-11-12 @570 goto release_dev_mem; 63c13d61eafe46 Erin Lo 2019-11-12 571 } 63c13d61eafe46 Erin Lo 2019-11-12 572 63c13d61eafe46 Erin Lo 2019-11-12 573 ret = clk_prepare_enable(scp->clk); 63c13d61eafe46 Erin Lo 2019-11-12 574 if (ret) { 63c13d61eafe46 Erin Lo 2019-11-12 575 dev_err(dev, "failed to enable clocks\n"); 63c13d61eafe46 Erin Lo 2019-11-12 576 goto release_dev_mem; 63c13d61eafe46 Erin Lo 2019-11-12 577 } 63c13d61eafe46 Erin Lo 2019-11-12 578 63c13d61eafe46 Erin Lo 2019-11-12 579 ret = scp_ipi_init(scp); 63c13d61eafe46 Erin Lo 2019-11-12 580 clk_disable_unprepare(scp->clk); 63c13d61eafe46 Erin Lo 2019-11-12 581 if (ret) { 63c13d61eafe46 Erin Lo 2019-11-12 582 dev_err(dev, "Failed to init ipi\n"); 63c13d61eafe46 Erin Lo 2019-11-12 583 goto release_dev_mem; 63c13d61eafe46 Erin Lo 2019-11-12 584 } 63c13d61eafe46 Erin Lo 2019-11-12 585 63c13d61eafe46 Erin Lo 2019-11-12 586 /* register SCP initialization IPI */ 63c13d61eafe46 Erin Lo 2019-11-12 587 ret = scp_ipi_register(scp, SCP_IPI_INIT, scp_init_ipi_handler, scp); 63c13d61eafe46 Erin Lo 2019-11-12 588 if (ret) { 63c13d61eafe46 Erin Lo 2019-11-12 589 dev_err(dev, "Failed to register IPI_SCP_INIT\n"); 63c13d61eafe46 Erin Lo 2019-11-12 590 goto release_dev_mem; 63c13d61eafe46 Erin Lo 2019-11-12 591 } 63c13d61eafe46 Erin Lo 2019-11-12 592 63c13d61eafe46 Erin Lo 2019-11-12 593 init_waitqueue_head(&scp->run.wq); 63c13d61eafe46 Erin Lo 2019-11-12 594 init_waitqueue_head(&scp->ack_wq); 63c13d61eafe46 Erin Lo 2019-11-12 595 7017996951fde8 Pi-Hsun Shih 2019-11-12 596 scp_add_rpmsg_subdev(scp); 7017996951fde8 Pi-Hsun Shih 2019-11-12 597 63c13d61eafe46 Erin Lo 2019-11-12 598 ret = devm_request_threaded_irq(dev, platform_get_irq(pdev, 0), NULL, 63c13d61eafe46 Erin Lo 2019-11-12 599 scp_irq_handler, IRQF_ONESHOT, 63c13d61eafe46 Erin Lo 2019-11-12 600 pdev->name, scp); 63c13d61eafe46 Erin Lo 2019-11-12 601 63c13d61eafe46 Erin Lo 2019-11-12 602 if (ret) { 63c13d61eafe46 Erin Lo 2019-11-12 603 dev_err(dev, "failed to request irq\n"); 7017996951fde8 Pi-Hsun Shih 2019-11-12 604 goto remove_subdev; 63c13d61eafe46 Erin Lo 2019-11-12 605 } 63c13d61eafe46 Erin Lo 2019-11-12 606 63c13d61eafe46 Erin Lo 2019-11-12 607 ret = rproc_add(rproc); 63c13d61eafe46 Erin Lo 2019-11-12 608 if (ret) 7017996951fde8 Pi-Hsun Shih 2019-11-12 609 goto remove_subdev; 63c13d61eafe46 Erin Lo 2019-11-12 610 7017996951fde8 Pi-Hsun Shih 2019-11-12 611 return 0; 63c13d61eafe46 Erin Lo 2019-11-12 612 7017996951fde8 Pi-Hsun Shih 2019-11-12 613 remove_subdev: 7017996951fde8 Pi-Hsun Shih 2019-11-12 614 scp_remove_rpmsg_subdev(scp); 63c13d61eafe46 Erin Lo 2019-11-12 615 scp_ipi_unregister(scp, SCP_IPI_INIT); 63c13d61eafe46 Erin Lo 2019-11-12 616 release_dev_mem: 63c13d61eafe46 Erin Lo 2019-11-12 617 scp_unmap_memory_region(scp); 63c13d61eafe46 Erin Lo 2019-11-12 618 destroy_mutex: 63c13d61eafe46 Erin Lo 2019-11-12 619 for (i = 0; i < SCP_IPI_MAX; i++) 63c13d61eafe46 Erin Lo 2019-11-12 620 mutex_destroy(&scp->ipi_desc[i].lock); 63c13d61eafe46 Erin Lo 2019-11-12 621 mutex_destroy(&scp->send_lock); 63c13d61eafe46 Erin Lo 2019-11-12 622 free_rproc: 63c13d61eafe46 Erin Lo 2019-11-12 623 rproc_free(rproc); 63c13d61eafe46 Erin Lo 2019-11-12 624 63c13d61eafe46 Erin Lo 2019-11-12 625 return ret; 63c13d61eafe46 Erin Lo 2019-11-12 626 } 63c13d61eafe46 Erin Lo 2019-11-12 627 :::::: The code at line 570 was first introduced by commit :::::: 63c13d61eafe4606f1c16c54da40c4eee78e9edf remoteproc/mediatek: add SCP support for mt8183 :::::: TO: Erin Lo <[email protected]> :::::: CC: Bjorn Andersson <[email protected]> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected]
.config.gz
Description: application/gzip
_______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
