summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2014-02-18 15:34:14 -0500
committerDavid S. Miller <davem@davemloft.net>2014-02-18 15:34:14 -0500
commit9fa9e49829fc4628ffb3c1d613f6e52bcbf59480 (patch)
tree7a327919da5e6d2a968b41d197d966ee92896ca0 /drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
parent81206ebcbb7c3656b8d2ece3e49e444d9ff646c3 (diff)
parentb4b39061da4d28c15341378e615948936e6d148f (diff)
downloadop-kernel-dev-9fa9e49829fc4628ffb3c1d613f6e52bcbf59480.zip
op-kernel-dev-9fa9e49829fc4628ffb3c1d613f6e52bcbf59480.tar.gz
Merge branch 'msix'
Alexander Gordeev says: ==================== net: 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. Cc: e1000-devel@lists.sourceforge.net Cc: linux-driver@qlogic.com Cc: linux-net-drivers@solarflare.com Cc: linux-pci@vger.kernel.org Cc: linux-rdma@vger.kernel.org Cc: netdev@vger.kernel.org Cc: pv-drivers@vmware.com Cc: wil6210@qca.qualcomm.com ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c')
-rw-r--r--drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c26
1 files changed, 9 insertions, 17 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c b/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
index 45d7733..07bbb71 100644
--- a/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
+++ b/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
@@ -3088,30 +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 < 0)
- pci_disable_msix(adap->pdev);
-
- 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)
OpenPOWER on IntegriCloud