diff options
Diffstat (limited to 'drivers/net/ethernet/qlogic/qed/qed_main.c')
-rw-r--r-- | drivers/net/ethernet/qlogic/qed/qed_main.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/drivers/net/ethernet/qlogic/qed/qed_main.c b/drivers/net/ethernet/qlogic/qed/qed_main.c index 8b22f87033ce..753064679bde 100644 --- a/drivers/net/ethernet/qlogic/qed/qed_main.c +++ b/drivers/net/ethernet/qlogic/qed/qed_main.c | |||
@@ -413,15 +413,17 @@ static int qed_set_int_mode(struct qed_dev *cdev, bool force_mode) | |||
413 | /* Fallthrough */ | 413 | /* Fallthrough */ |
414 | 414 | ||
415 | case QED_INT_MODE_MSI: | 415 | case QED_INT_MODE_MSI: |
416 | rc = pci_enable_msi(cdev->pdev); | 416 | if (cdev->num_hwfns == 1) { |
417 | if (!rc) { | 417 | rc = pci_enable_msi(cdev->pdev); |
418 | int_params->out.int_mode = QED_INT_MODE_MSI; | 418 | if (!rc) { |
419 | goto out; | 419 | int_params->out.int_mode = QED_INT_MODE_MSI; |
420 | } | 420 | goto out; |
421 | } | ||
421 | 422 | ||
422 | DP_NOTICE(cdev, "Failed to enable MSI\n"); | 423 | DP_NOTICE(cdev, "Failed to enable MSI\n"); |
423 | if (force_mode) | 424 | if (force_mode) |
424 | goto out; | 425 | goto out; |
426 | } | ||
425 | /* Fallthrough */ | 427 | /* Fallthrough */ |
426 | 428 | ||
427 | case QED_INT_MODE_INTA: | 429 | case QED_INT_MODE_INTA: |