Hi Damien, kernel test robot noticed the following build errors: [auto build test ERROR on pci/next] [also build test ERROR on pci/for-linus linus/master v6.9-rc1 next-20240328] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Damien-Le-Moal/PCI-endpoint-Introduce-pci_epc_check_func/20240329-171158 base: https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git next patch link: https://lore.kernel.org/r/20240329090945.1097609-20-dlemoal%40kernel.org patch subject: [PATCH 19/19] PCI: rockchip-ep: Handle PERST signal in endpoint mode config: i386-buildonly-randconfig-005-20240330 (https://download.01.org/0day-ci/archive/20240330/202403301809.VzsJsDFL-lkp@xxxxxxxxx/config) compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240330/202403301809.VzsJsDFL-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202403301809.VzsJsDFL-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): >> drivers/pci/controller/pcie-rockchip-ep.c:633:2: error: call to undeclared function 'irq_set_irq_type'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 633 | irq_set_irq_type(ep->perst_irq, | ^ drivers/pci/controller/pcie-rockchip-ep.c:633:2: note: did you mean 'irq_set_irq_wake'? include/linux/interrupt.h:482:12: note: 'irq_set_irq_wake' declared here 482 | extern int irq_set_irq_wake(unsigned int irq, unsigned int on); | ^ >> drivers/pci/controller/pcie-rockchip-ep.c:657:2: error: call to undeclared function 'irq_set_status_flags'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 657 | irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN); | ^ >> drivers/pci/controller/pcie-rockchip-ep.c:657:38: error: use of undeclared identifier 'IRQ_NOAUTOEN' 657 | irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN); | ^ 3 errors generated. vim +/irq_set_irq_type +633 drivers/pci/controller/pcie-rockchip-ep.c 620 621 static irqreturn_t rockchip_pcie_ep_perst_irq_thread(int irq, void *data) 622 { 623 struct pci_epc *epc = data; 624 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); 625 struct rockchip_pcie *rockchip = &ep->rockchip; 626 u32 perst = gpiod_get_value(rockchip->ep_gpio); 627 628 if (perst) 629 rockchip_pcie_ep_perst_assert(ep); 630 else 631 rockchip_pcie_ep_perst_deassert(ep); 632 > 633 irq_set_irq_type(ep->perst_irq, 634 (perst ? IRQF_TRIGGER_HIGH : IRQF_TRIGGER_LOW)); 635 636 return IRQ_HANDLED; 637 } 638 639 static int rockchip_pcie_ep_setup_irq(struct pci_epc *epc) 640 { 641 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); 642 struct rockchip_pcie *rockchip = &ep->rockchip; 643 struct device *dev = rockchip->dev; 644 int ret; 645 646 if (!rockchip->ep_gpio) 647 return 0; 648 649 /* PCIe reset interrupt */ 650 ep->perst_irq = gpiod_to_irq(rockchip->ep_gpio); 651 if (ep->perst_irq < 0) { 652 dev_err(dev, "No corresponding IRQ for PERST GPIO\n"); 653 return ep->perst_irq; 654 } 655 656 ep->perst_asserted = true; > 657 irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN); 658 ret = devm_request_threaded_irq(dev, ep->perst_irq, NULL, 659 rockchip_pcie_ep_perst_irq_thread, 660 IRQF_TRIGGER_HIGH | IRQF_ONESHOT, 661 "pcie-ep-perst", epc); 662 if (ret) { 663 dev_err(dev, "Request PERST GPIO IRQ failed %d\n", ret); 664 return ret; 665 } 666 667 return 0; 668 } 669 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki