summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid/megaraid_sas_base.c
diff options
context:
space:
mode:
authorAlexander Gordeev2014-08-18 08:01:44 +0200
committerChristoph Hellwig2014-09-16 18:09:40 +0200
commit8ae80ed1734bbe9b2c2021ef1ea981b7d4ccc598 (patch)
treeca6750c387c261bdfdc581afc15b925981ddbaf8 /drivers/scsi/megaraid/megaraid_sas_base.c
parentmegaraid: Fail resume if MSI-X re-initialization failed (diff)
downloadkernel-qcow2-linux-8ae80ed1734bbe9b2c2021ef1ea981b7d4ccc598.tar.gz
kernel-qcow2-linux-8ae80ed1734bbe9b2c2021ef1ea981b7d4ccc598.tar.xz
kernel-qcow2-linux-8ae80ed1734bbe9b2c2021ef1ea981b7d4ccc598.zip
megaraid: 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() or pci_enable_msi_exact() and pci_enable_msix_range() or pci_enable_msix_exact() interfaces. Signed-off-by: Alexander Gordeev <agordeev@redhat.com> Acked-by: Kashyap Desai <Kashyap.desai@avagotech.com> Cc: Neela Syam Kolli <megaraidlinux@lsi.com> Cc: linux-scsi@vger.kernel.org Cc: linux-pci@vger.kernel.org Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas_base.c')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_base.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index e4ffae5346fc..a2f4d4f6515c 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4103,17 +4103,11 @@ 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)
+ instance->msix_vectors = i;
+ else
instance->msix_vectors = 0;
dev_info(&instance->pdev->dev, "[scsi%d]: FW supports"
@@ -5133,8 +5127,8 @@ megasas_resume(struct pci_dev *pdev)
/* Now re-enable MSI-X */
if (instance->msix_vectors &&
- pci_enable_msix(instance->pdev, instance->msixentry,
- instance->msix_vectors))
+ pci_enable_msix_exact(instance->pdev, instance->msixentry,
+ instance->msix_vectors))
goto fail_reenable_msix;
switch (instance->pdev->device) {