diff options
author | Dan Williams <dan.j.williams@intel.com> | 2015-12-05 16:18:44 -0800 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2015-12-07 09:50:01 -0500 |
commit | f893180b79f6ada44068e4fe764eb2de70ee6bea (patch) | |
tree | 567649dfa2f875dcb34913af8d6cfd54026a04d5 /drivers/ata/libahci.c | |
parent | 7e22c0024cf89404407f19955eab39b6d66de7b6 (diff) | |
download | linux-stable-f893180b79f6ada44068e4fe764eb2de70ee6bea.tar.gz linux-stable-f893180b79f6ada44068e4fe764eb2de70ee6bea.tar.bz2 linux-stable-f893180b79f6ada44068e4fe764eb2de70ee6bea.zip |
ahci: compile out msi/msix infrastructure
Quoting Arnd:
The AHCI driver is used for some on-chip devices that do not use PCI
for probing, and it can be built even when CONFIG_PCI is disabled, but
that now results in a build failure:
ata/libahci.c: In function 'ahci_host_activate_multi_irqs':
ata/libahci.c:2475:4: error: invalid use of undefined type 'struct msix_entry'
ata/libahci.c:2475:21: error: dereferencing pointer to incomplete type 'struct msix_entry'
Add ifdef CONFIG_PCI_MSI infrastructure to compile out the multi-msi and
multi-msix code.
Reported-by: Arnd Bergmann <arnd@arndb.de>
Tested--by: Arnd Bergmann <arnd@arndb.de>
[arnd: fix up pci enabled case]
Reported-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Fixes: d684a90d38e2 ("ahci: per-port msix support")
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata/libahci.c')
-rw-r--r-- | drivers/ata/libahci.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c index 1b6c7cc415bf..eda3cf2163bb 100644 --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c @@ -2469,12 +2469,7 @@ static int ahci_host_activate_multi_irqs(struct ata_host *host, */ for (i = 0; i < host->n_ports; i++) { struct ahci_port_priv *pp = host->ports[i]->private_data; - int irq; - - if (hpriv->flags & AHCI_HFLAG_MULTI_MSIX) - irq = hpriv->msix[i].vector; - else - irq = hpriv->irq + i; + int irq = ahci_irq_vector(hpriv, i); /* Do not receive interrupts sent by dummy ports */ if (!pp) { |