>-----Original Message-----
>From: Alexander Gordeev [mailto:agord...@redhat.com]
>Sent: Tuesday, February 04, 2014 4:47 PM
>To: linux-kernel@vger.kernel.org
>Cc: Alexander Gordeev; DL-MegaRAID Linux; linux-s...@vger.kernel.org;
>linux-...@vger.kernel.org
>Subject: [PATCH 13/22] megaraid: Use pci_enable_msix_range()
>
>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 <agord...@redhat.com>
>Cc: Neela Syam Kolli <megaraidli...@lsi.com>
>Cc: linux-s...@vger.kernel.org
>Cc: linux-...@vger.kernel.org
>---
> drivers/scsi/megaraid/megaraid_sas_base.c |   25 +++++++++++--------------
> 1 files changed, 11 insertions(+), 14 deletions(-)
>
>diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c
>b/drivers/scsi/megaraid/megaraid_sas_base.c
>index 3b7ad10..90944f1 100644
>--- a/drivers/scsi/megaraid/megaraid_sas_base.c
>+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
>@@ -3731,18 +3731,12 @@ static int megasas_init_fw(struct
>megasas_instance *instance)
>                                            (unsigned int)num_online_cpus());
>               for (i = 0; i < instance->msix_vectors; i++)
>                       instance->msixentry[i].entry = i;
>-              i = pci_enable_msix(instance->pdev, instance->msixentry,
>-                                  instance->msix_vectors);
>-              if (i >= 0) {
>-                      if (i) {
>-                              if (!pci_enable_msix(instance->pdev,
>-                                                   instance->msixentry, i))
>-                                      instance->msix_vectors = i;
>-                              else
>-                                      instance->msix_vectors = 0;
>-                      }
>-              } else
>+              i = pci_enable_msix_range(instance->pdev, instance-
>>msixentry,
>+                                        1, instance->msix_vectors);
>+              if (i < 0)
>                       instance->msix_vectors = 0;
>+              else
>+                      instance->msix_vectors = i;
>
>               dev_info(&instance->pdev->dev, "[scsi%d]: FW supports"
>                       "<%d> MSIX vector,Online CPUs: <%d>,"
>@@ -4667,9 +4661,11 @@ megasas_resume(struct pci_dev *pdev)
>               goto fail_ready_state;
>
>       /* Now re-enable MSI-X */
>-      if (instance->msix_vectors)
>-              pci_enable_msix(instance->pdev, instance->msixentry,
>-                              instance->msix_vectors);
>+      if (instance->msix_vectors &&
>+          pci_enable_msix_range(instance->pdev, instance->msixentry,
>+                                instance->msix_vectors,
>+                                instance->msix_vectors) < 0)
>+              goto fail_reenable_msix;
>
>       switch (instance->pdev->device) {
>       case PCI_DEVICE_ID_LSI_FUSION:
>@@ -4756,6 +4752,7 @@ fail_init_mfi:
>
> fail_set_dma_mask:
> fail_ready_state:
>+fail_reenable_msix:
>
>       pci_disable_device(pdev);

Acked-by: Sumit Saxena <sumit.sax...@lsi.com>

Sumit
>
>--
>1.7.7.6
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to