[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] [IA64] Add pci configuration code, which is needed by VTD.



# HG changeset patch
# User Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1223607443 -32400
# Node ID 1a77bb358d7b1416a1f453f8ebd0039d3db44e6f
# Parent  faf07ca43a2871d0f8534d2709677e40b46b12fb
[IA64] Add pci configuration code, which is needed by VTD.

Signed-off-by; Anthony Xu <anthony.xu@xxxxxxxxx>
---
 xen/arch/ia64/linux-xen/irq_ia64.c |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+)

diff -r faf07ca43a28 -r 1a77bb358d7b xen/arch/ia64/linux-xen/irq_ia64.c
--- a/xen/arch/ia64/linux-xen/irq_ia64.c        Fri Oct 10 11:47:07 2008 +0900
+++ b/xen/arch/ia64/linux-xen/irq_ia64.c        Fri Oct 10 11:57:23 2008 +0900
@@ -266,6 +266,39 @@ register_percpu_irq (ia64_vector vec, st
                }
 }
 
+#ifdef XEN
+int request_irq(unsigned int irq,
+               void (*handler)(int, void *, struct cpu_user_regs *),
+               unsigned long irqflags, const char * devname, void *dev_id)
+{
+       struct irqaction * action;
+       int retval=0;
+
+       /*
+        * Sanity-check: shared interrupts must pass in a real dev-ID,
+        * otherwise we'll have trouble later trying to figure out
+        * which interrupt is which (messes up the interrupt freeing logic etc).
+        *                          */
+       if (irq >= NR_IRQS)
+               return -EINVAL;
+       if (!handler)
+               return -EINVAL;
+
+       action = xmalloc(struct irqaction);
+       if (!action)
+               return -ENOMEM;
+
+       action->handler = handler;
+       action->name = devname;
+       action->dev_id = dev_id;
+       setup_vector(irq, action);
+       if (retval)
+               xfree(action);
+
+       return retval;
+}
+#endif
+
 void __init
 init_IRQ (void)
 {

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.