From: Yijing Wang Date: Thu, 8 Aug 2013 13:09:34 +0000 (+0800) Subject: ntb: clean up unnecessary MSI/MSI-X capability find X-Git-Tag: firefly_0821_release~176^2~5387^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=73f47cadfe29f98c48d7fbac4dd79d3e7979ee0b;p=firefly-linux-kernel-4.4.55.git ntb: clean up unnecessary MSI/MSI-X capability find PCI core will initialize device MSI/MSI-X capability in pci_msi_init_pci_dev(). So device driver should use pci_dev->msi_cap/msix_cap to determine whether the device support MSI/MSI-X instead of using pci_find_capability(pci_dev, PCI_CAP_ID_MSI/MSIX). Access to PCIe device config space again will consume more time. Signed-off-by: Yijing Wang Signed-off-by: Jon Mason --- diff --git a/drivers/ntb/ntb_hw.c b/drivers/ntb/ntb_hw.c index b717922d6240..1cb6e51e6bda 100644 --- a/drivers/ntb/ntb_hw.c +++ b/drivers/ntb/ntb_hw.c @@ -1031,16 +1031,15 @@ static int ntb_setup_msix(struct ntb_device *ndev) struct pci_dev *pdev = ndev->pdev; struct msix_entry *msix; int msix_entries; - int rc, i, pos; + int rc, i; u16 val; - pos = pci_find_capability(pdev, PCI_CAP_ID_MSIX); - if (!pos) { + if (!pdev->msix_cap) { rc = -EIO; goto err; } - rc = pci_read_config_word(pdev, pos + PCI_MSIX_FLAGS, &val); + rc = pci_read_config_word(pdev, pdev->msix_cap + PCI_MSIX_FLAGS, &val); if (rc) goto err;