]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
cxgb3: Use pci_enable_msix_range() instead of pci_enable_msix()
authorAlexander Gordeev <agordeev@redhat.com>
Tue, 18 Feb 2014 10:07:58 +0000 (11:07 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 18 Feb 2014 20:33:30 +0000 (15:33 -0500)
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: Santosh Raspatur <santosh@chelsio.com>
Cc: netdev@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c

index b72d2ed9dad4e0a5cb9c311a9bca1fb760e3f870..07bbb711b7e5a716aba3e8d2e3e958e2ce8fa506 100644 (file)
@@ -3088,27 +3088,22 @@ static int cxgb_enable_msix(struct adapter *adap)
 {
        struct msix_entry entries[SGE_QSETS + 1];
        int vectors;
-       int i, err;
+       int i;
 
        vectors = ARRAY_SIZE(entries);
        for (i = 0; i < vectors; ++i)
                entries[i].entry = i;
 
-       while ((err = pci_enable_msix(adap->pdev, entries, vectors)) > 0)
-               vectors = err;
-
-       if (!err && vectors < (adap->params.nports + 1)) {
-               pci_disable_msix(adap->pdev);
-               err = -1;
-       }
+       vectors = pci_enable_msix_range(adap->pdev, entries,
+                                       adap->params.nports + 1, vectors);
+       if (vectors < 0)
+               return vectors;
 
-       if (!err) {
-               for (i = 0; i < vectors; ++i)
-                       adap->msix_info[i].vec = entries[i].vector;
-               adap->msix_nvectors = vectors;
-       }
+       for (i = 0; i < vectors; ++i)
+               adap->msix_info[i].vec = entries[i].vector;
+       adap->msix_nvectors = vectors;
 
-       return err;
+       return 0;
 }
 
 static void print_port_info(struct adapter *adap, const struct adapter_info *ai)