aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/sn/kernel/msi_sn.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2007-01-28 14:52:03 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2007-02-07 18:50:08 -0500
commit5b912c108c8b1fcecbfe13d6d9a183db97b682d3 (patch)
tree0267f65fd9237a41207e4359e09d09e60f6cd754 /arch/ia64/sn/kernel/msi_sn.c
parent1c659d61cfbd8dc3926688c1bbf12d80f4cfb5c2 (diff)
msi: Kill the msi_desc array.
We need to be able to get from an irq number to a struct msi_desc. The msi_desc array in msi.c had several short comings the big one was that it could not be used outside of msi.c. Using irq_data in struct irq_desc almost worked except on some architectures irq_data needs to be used for something else. So this patch adds a msi_desc pointer to irq_desc, adds the appropriate wrappers and changes all of the msi code to use them. The dynamic_irq_init/cleanup code was tweaked to ensure the new field is left in a well defined state. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch/ia64/sn/kernel/msi_sn.c')
-rw-r--r--arch/ia64/sn/kernel/msi_sn.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/ia64/sn/kernel/msi_sn.c b/arch/ia64/sn/kernel/msi_sn.c
index b3a435fd70fb..31fbb859b67e 100644
--- a/arch/ia64/sn/kernel/msi_sn.c
+++ b/arch/ia64/sn/kernel/msi_sn.c
@@ -74,7 +74,7 @@ int sn_setup_msi_irq(unsigned int irq, struct pci_dev *pdev)
74 struct pcibus_bussoft *bussoft = SN_PCIDEV_BUSSOFT(pdev); 74 struct pcibus_bussoft *bussoft = SN_PCIDEV_BUSSOFT(pdev);
75 struct sn_pcibus_provider *provider = SN_PCIDEV_BUSPROVIDER(pdev); 75 struct sn_pcibus_provider *provider = SN_PCIDEV_BUSPROVIDER(pdev);
76 76
77 entry = get_irq_data(irq); 77 entry = get_irq_msi(irq);
78 if (!entry->msi_attrib.is_64) 78 if (!entry->msi_attrib.is_64)
79 return -EINVAL; 79 return -EINVAL;
80 80