From: kernel test robot <lkp@intel.com>
To: Damien Le Moal <dlemoal@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev, linux-pci@vger.kernel.org,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>
Subject: [pci:controller/rockchip 13/13] drivers/pci/controller/pcie-rockchip-ep.c:640:9: error: implicit declaration of function 'irq_set_irq_type'; did you mean 'irq_set_irq_wake'?
Date: Thu, 14 Nov 2024 16:17:01 +0800 [thread overview]
Message-ID: <202411141621.uwFAKZb2-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git controller/rockchip
head: 337657a3c24c92befb3ed11d6f15402faa09f7dd
commit: 337657a3c24c92befb3ed11d6f15402faa09f7dd [13/13] PCI: rockchip-ep: Handle PERST# signal in endpoint mode
config: sparc-allmodconfig (https://download.01.org/0day-ci/archive/20241114/202411141621.uwFAKZb2-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241114/202411141621.uwFAKZb2-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202411141621.uwFAKZb2-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/pci/controller/pcie-rockchip-ep.c: In function 'rockchip_pcie_ep_perst_irq_thread':
>> drivers/pci/controller/pcie-rockchip-ep.c:640:9: error: implicit declaration of function 'irq_set_irq_type'; did you mean 'irq_set_irq_wake'? [-Wimplicit-function-declaration]
640 | irq_set_irq_type(ep->perst_irq,
| ^~~~~~~~~~~~~~~~
| irq_set_irq_wake
drivers/pci/controller/pcie-rockchip-ep.c: In function 'rockchip_pcie_ep_setup_irq':
>> drivers/pci/controller/pcie-rockchip-ep.c:672:9: error: implicit declaration of function 'irq_set_status_flags' [-Wimplicit-function-declaration]
672 | irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN);
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/pci/controller/pcie-rockchip-ep.c:672:45: error: 'IRQ_NOAUTOEN' undeclared (first use in this function); did you mean 'IRQF_NO_AUTOEN'?
672 | irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN);
| ^~~~~~~~~~~~
| IRQF_NO_AUTOEN
drivers/pci/controller/pcie-rockchip-ep.c:672:45: note: each undeclared identifier is reported only once for each function it appears in
drivers/pci/controller/pcie-rockchip-ep.c: At top level:
drivers/pci/controller/pcie-rockchip-ep.c:705:10: error: 'const struct pci_epc_ops' has no member named 'align_addr'
705 | .align_addr = rockchip_pcie_ep_align_addr,
| ^~~~~~~~~~
drivers/pci/controller/pcie-rockchip-ep.c:705:27: error: initialization of 'int (*)(struct pci_epc *, u8, u8, phys_addr_t, u64, size_t)' {aka 'int (*)(struct pci_epc *, unsigned char, unsigned char, long long unsigned int, long long unsigned int, long unsigned int)'} from incompatible pointer type 'u64 (*)(struct pci_epc *, u64, size_t *, size_t *)' {aka 'long long unsigned int (*)(struct pci_epc *, long long unsigned int, long unsigned int *, long unsigned int *)'} [-Wincompatible-pointer-types]
705 | .align_addr = rockchip_pcie_ep_align_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/pci/controller/pcie-rockchip-ep.c:705:27: note: (near initialization for 'rockchip_pcie_epc_ops.map_addr')
drivers/pci/controller/pcie-rockchip-ep.c:706:27: warning: initialized field overwritten [-Woverride-init]
706 | .map_addr = rockchip_pcie_ep_map_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/pci/controller/pcie-rockchip-ep.c:706:27: note: (near initialization for 'rockchip_pcie_epc_ops.map_addr')
vim +640 drivers/pci/controller/pcie-rockchip-ep.c
627
628 static irqreturn_t rockchip_pcie_ep_perst_irq_thread(int irq, void *data)
629 {
630 struct pci_epc *epc = data;
631 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc);
632 struct rockchip_pcie *rockchip = &ep->rockchip;
633 u32 perst = gpiod_get_value(rockchip->perst_gpio);
634
635 if (perst)
636 rockchip_pcie_ep_perst_assert(ep);
637 else
638 rockchip_pcie_ep_perst_deassert(ep);
639
> 640 irq_set_irq_type(ep->perst_irq,
641 (perst ? IRQF_TRIGGER_HIGH : IRQF_TRIGGER_LOW));
642
643 return IRQ_HANDLED;
644 }
645
646 static int rockchip_pcie_ep_setup_irq(struct pci_epc *epc)
647 {
648 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc);
649 struct rockchip_pcie *rockchip = &ep->rockchip;
650 struct device *dev = rockchip->dev;
651 int ret;
652
653 if (!rockchip->perst_gpio)
654 return 0;
655
656 /* PCIe reset interrupt */
657 ep->perst_irq = gpiod_to_irq(rockchip->perst_gpio);
658 if (ep->perst_irq < 0) {
659 dev_err(dev,
660 "failed to get IRQ for PERST# GPIO: %d\n",
661 ep->perst_irq);
662
663 return ep->perst_irq;
664 }
665
666 /*
667 * The perst_gpio is active low, so when it is inactive on start, it
668 * is high and will trigger the perst_irq handler. So treat this initial
669 * IRQ as a dummy one by faking the host asserting PERST#.
670 */
671 ep->perst_asserted = true;
> 672 irq_set_status_flags(ep->perst_irq, IRQ_NOAUTOEN);
673 ret = devm_request_threaded_irq(dev, ep->perst_irq, NULL,
674 rockchip_pcie_ep_perst_irq_thread,
675 IRQF_TRIGGER_HIGH | IRQF_ONESHOT,
676 "pcie-ep-perst", epc);
677 if (ret) {
678 dev_err(dev,
679 "failed to request IRQ for PERST# GPIO: %d\n",
680 ret);
681
682 return ret;
683 }
684
685 return 0;
686 }
687
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2024-11-14 8:17 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202411141621.uwFAKZb2-lkp@intel.com \
--to=lkp@intel.com \
--cc=dlemoal@kernel.org \
--cc=kwilczynski@kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox