[PATCH 3/7] ahci: Use new interfaces for MSI/MSI-X enablement

From: Alexander Gordeev
Date: Tue Jan 07 2014 - 16:39:58 EST


Signed-off-by: Alexander Gordeev <agordeev@xxxxxxxxxx>
---
drivers/ata/ahci.c | 15 ++++++---------
1 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index 8516f4d..cfdb079 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -1098,13 +1098,13 @@ static inline void ahci_gtf_filter_workaround(struct ata_host *host)
int ahci_init_interrupts(struct pci_dev *pdev, unsigned int n_ports,
struct ahci_host_priv *hpriv)
{
- int rc, nvec;
+ int nvec;

if (hpriv->flags & AHCI_HFLAG_NO_MSI)
goto intx;

- rc = pci_msi_vec_count(pdev);
- if (rc < 0)
+ nvec = pci_msi_vec_count(pdev);
+ if (nvec < 0)
goto intx;

/*
@@ -1112,19 +1112,16 @@ int ahci_init_interrupts(struct pci_dev *pdev, unsigned int n_ports,
* Message mode could be enforced. In this case assume that advantage
* of multipe MSIs is negated and use single MSI mode instead.
*/
- if (rc < n_ports)
+ if (nvec < n_ports)
goto single_msi;

- nvec = rc;
- rc = pci_enable_msi_block(pdev, nvec);
- if (rc)
+ if (pci_enable_msi_range(pdev, nvec, nvec) < 0)
goto intx;

return nvec;

single_msi:
- rc = pci_enable_msi(pdev);
- if (rc)
+ if (pci_enable_msi_range(pdev, 1, 1) < 0)
goto intx;
return 1;

--
1.7.7.6

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