drivers/crypto/inside-secure/safexcel.c:840:9: error: implicit declaration of function 'pci_irq_vector'; did you mean 'rcu_irq_enter'?

From: kbuild test robot
Date: Thu Sep 19 2019 - 21:04:34 EST


Hi Pascal,

FYI, the error/warning still remains.

tree: https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 574cc4539762561d96b456dbc0544d8898bd4c6e
commit: 625f269a5a7a3643771320387e474bd0a61d9654 crypto: inside-secure - add support for PCI based FPGA development board
date: 3 weeks ago
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 625f269a5a7a3643771320387e474bd0a61d9654
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=sh

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

drivers/crypto/inside-secure/safexcel.c: In function 'safexcel_request_ring_irq':
>> drivers/crypto/inside-secure/safexcel.c:840:9: error: implicit declaration of function 'pci_irq_vector'; did you mean 'rcu_irq_enter'? [-Werror=implicit-function-declaration]
irq = pci_irq_vector(pci_pdev, irqid);
^~~~~~~~~~~~~~
rcu_irq_enter
drivers/crypto/inside-secure/safexcel.c: In function 'safexcel_probe_generic':
>> drivers/crypto/inside-secure/safexcel.c:1043:9: error: implicit declaration of function 'pci_alloc_irq_vectors'; did you mean 'pci_alloc_consistent'? [-Werror=implicit-function-declaration]
ret = pci_alloc_irq_vectors(pci_pdev,
^~~~~~~~~~~~~~~~~~~~~
pci_alloc_consistent
>> drivers/crypto/inside-secure/safexcel.c:1046:10: error: 'PCI_IRQ_MSI' undeclared (first use in this function); did you mean 'IRQ_MSK'?
PCI_IRQ_MSI | PCI_IRQ_MSIX);
^~~~~~~~~~~
IRQ_MSK
drivers/crypto/inside-secure/safexcel.c:1046:10: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/crypto/inside-secure/safexcel.c:1046:24: error: 'PCI_IRQ_MSIX' undeclared (first use in this function); did you mean 'PCI_IRQ_MSI'?
PCI_IRQ_MSI | PCI_IRQ_MSIX);
^~~~~~~~~~~~
PCI_IRQ_MSI
drivers/crypto/inside-secure/safexcel.c: In function 'safexcel_init':
drivers/crypto/inside-secure/safexcel.c:1402:6: warning: unused variable 'rc' [-Wunused-variable]
int rc;
^~
cc1: some warnings being treated as errors

vim +840 drivers/crypto/inside-secure/safexcel.c

826
827 static int safexcel_request_ring_irq(void *pdev, int irqid,
828 int is_pci_dev,
829 irq_handler_t handler,
830 irq_handler_t threaded_handler,
831 struct safexcel_ring_irq_data *ring_irq_priv)
832 {
833 int ret, irq;
834 struct device *dev;
835
836 if (IS_ENABLED(CONFIG_PCI) && is_pci_dev) {
837 struct pci_dev *pci_pdev = pdev;
838
839 dev = &pci_pdev->dev;
> 840 irq = pci_irq_vector(pci_pdev, irqid);
841 if (irq < 0) {
842 dev_err(dev, "unable to get device MSI IRQ %d (err %d)\n",
843 irqid, irq);
844 return irq;
845 }
846 } else if (IS_ENABLED(CONFIG_OF)) {
847 struct platform_device *plf_pdev = pdev;
848 char irq_name[6] = {0}; /* "ringX\0" */
849
850 snprintf(irq_name, 6, "ring%d", irqid);
851 dev = &plf_pdev->dev;
852 irq = platform_get_irq_byname(plf_pdev, irq_name);
853
854 if (irq < 0) {
855 dev_err(dev, "unable to get IRQ '%s' (err %d)\n",
856 irq_name, irq);
857 return irq;
858 }
859 }
860
861 ret = devm_request_threaded_irq(dev, irq, handler,
862 threaded_handler, IRQF_ONESHOT,
863 dev_name(dev), ring_irq_priv);
864 if (ret) {
865 dev_err(dev, "unable to request IRQ %d\n", irq);
866 return ret;
867 }
868
869 return irq;
870 }
871

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip