aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Gordeev <agordeev@redhat.com>2014-02-18 05:07:56 -0500
committerDavid S. Miller <davem@davemloft.net>2014-02-18 15:33:29 -0500
commit43c20200d13146b2e51a0bd069a566e582c75c9d (patch)
tree4e07645645c375b3879ac9647a32b1afe7d03d62
parent6f1f411a2398bfdb55b4de9e60e830d5a85702d6 (diff)
bna: Use pci_enable_msix_range() instead of pci_enable_msix()
As result of deprecation of MSI-X/MSI enablement functions pci_enable_msix() and pci_enable_msi_block() all drivers using these two interfaces need to be updated to use the new pci_enable_msi_range() and pci_enable_msix_range() interfaces. Signed-off-by: Alexander Gordeev <agordeev@redhat.com> Cc: Rasesh Mody <rmody@brocade.com> Cc: netdev@vger.kernel.org Cc: linux-pci@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/brocade/bna/bnad.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/drivers/net/ethernet/brocade/bna/bnad.c b/drivers/net/ethernet/brocade/bna/bnad.c
index cf64f3d0b60d..bf436d0a1094 100644
--- a/drivers/net/ethernet/brocade/bna/bnad.c
+++ b/drivers/net/ethernet/brocade/bna/bnad.c
@@ -2666,9 +2666,11 @@ bnad_enable_msix(struct bnad *bnad)
2666 for (i = 0; i < bnad->msix_num; i++) 2666 for (i = 0; i < bnad->msix_num; i++)
2667 bnad->msix_table[i].entry = i; 2667 bnad->msix_table[i].entry = i;
2668 2668
2669 ret = pci_enable_msix(bnad->pcidev, bnad->msix_table, bnad->msix_num); 2669 ret = pci_enable_msix_range(bnad->pcidev, bnad->msix_table,
2670 if (ret > 0) { 2670 1, bnad->msix_num);
2671 /* Not enough MSI-X vectors. */ 2671 if (ret < 0) {
2672 goto intx_mode;
2673 } else if (ret < bnad->msix_num) {
2672 pr_warn("BNA: %d MSI-X vectors allocated < %d requested\n", 2674 pr_warn("BNA: %d MSI-X vectors allocated < %d requested\n",
2673 ret, bnad->msix_num); 2675 ret, bnad->msix_num);
2674 2676
@@ -2681,18 +2683,11 @@ bnad_enable_msix(struct bnad *bnad)
2681 bnad->msix_num = BNAD_NUM_TXQ + BNAD_NUM_RXP + 2683 bnad->msix_num = BNAD_NUM_TXQ + BNAD_NUM_RXP +
2682 BNAD_MAILBOX_MSIX_VECTORS; 2684 BNAD_MAILBOX_MSIX_VECTORS;
2683 2685
2684 if (bnad->msix_num > ret) 2686 if (bnad->msix_num > ret) {
2685 goto intx_mode; 2687 pci_disable_msix(bnad->pcidev);
2686
2687 /* Try once more with adjusted numbers */
2688 /* If this fails, fall back to INTx */
2689 ret = pci_enable_msix(bnad->pcidev, bnad->msix_table,
2690 bnad->msix_num);
2691 if (ret)
2692 goto intx_mode; 2688 goto intx_mode;
2693 2689 }
2694 } else if (ret < 0) 2690 }
2695 goto intx_mode;
2696 2691
2697 pci_intx(bnad->pcidev, 0); 2692 pci_intx(bnad->pcidev, 0);
2698 2693