WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] [IA64] This is consistent with the x86 ve

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] This is consistent with the x86 version of this function.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 31 Mar 2009 08:10:10 -0700
Delivery-date: Tue, 31 Mar 2009 08:10:19 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1235980342 -32400
# Node ID c4c4ba857d8b4b045f169b33c7e36dcdc07af720
# Parent  b432c632ebe855c9823e4f5558090aeacb942434
[IA64] This is consistent with the x86 version of this function.

Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 xen/include/asm-ia64/linux/asm/hw_irq.h          |  138 ----------------------
 xen/arch/ia64/linux-xen/irq_ia64.c               |    9 -
 xen/arch/ia64/linux-xen/mca.c                    |    3 
 xen/include/asm-ia64/hvm/iommu.h                 |    4 
 xen/include/asm-ia64/linux-xen/asm/README.origin |    1 
 xen/include/asm-ia64/linux-xen/asm/hw_irq.h      |  141 +++++++++++++++++++++++
 xen/include/asm-ia64/linux/asm/README.origin     |    1 
 7 files changed, 147 insertions(+), 150 deletions(-)

diff -r b432c632ebe8 -r c4c4ba857d8b xen/arch/ia64/linux-xen/irq_ia64.c
--- a/xen/arch/ia64/linux-xen/irq_ia64.c        Fri Feb 13 19:11:38 2009 +0900
+++ b/xen/arch/ia64/linux-xen/irq_ia64.c        Mon Mar 02 16:52:22 2009 +0900
@@ -242,10 +242,6 @@ static struct irqaction ipi_irqaction = 
 };
 #endif
 
-#ifdef XEN
-extern void setup_vector (unsigned int vec, struct irqaction *action);
-#endif
-
 void
 register_percpu_irq (ia64_vector vec, struct irqaction *action)
 {
@@ -276,7 +272,7 @@ int request_irq_vector(unsigned int vect
                unsigned long irqflags, const char * devname, void *dev_id)
 {
        struct irqaction * action;
-       int retval=0;
+       int retval;
 
        /*
         * Sanity-check: shared interrupts must pass in a real dev-ID,
@@ -295,7 +291,8 @@ int request_irq_vector(unsigned int vect
        action->handler = handler;
        action->name = devname;
        action->dev_id = dev_id;
-       setup_vector(vector, action);
+
+       retval = setup_vector(vector, action);
        if (retval)
                xfree(action);
 
diff -r b432c632ebe8 -r c4c4ba857d8b xen/arch/ia64/linux-xen/mca.c
--- a/xen/arch/ia64/linux-xen/mca.c     Fri Feb 13 19:11:38 2009 +0900
+++ b/xen/arch/ia64/linux-xen/mca.c     Mon Mar 02 16:52:22 2009 +0900
@@ -112,9 +112,6 @@ unsigned long __per_cpu_mca[NR_CPUS];
 /* In mca_asm.S */
 extern void                    ia64_monarch_init_handler (void);
 extern void                    ia64_slave_init_handler (void);
-#ifdef XEN
-extern void setup_vector (unsigned int vec, struct irqaction *action);
-#endif
 
 static ia64_mc_info_t          ia64_mc_info;
 
diff -r b432c632ebe8 -r c4c4ba857d8b xen/include/asm-ia64/hvm/iommu.h
--- a/xen/include/asm-ia64/hvm/iommu.h  Fri Feb 13 19:11:38 2009 +0900
+++ b/xen/include/asm-ia64/hvm/iommu.h  Mon Mar 02 16:52:22 2009 +0900
@@ -4,8 +4,8 @@
 #include <asm/hvm/irq.h>
 #include <public/event_channel.h>
 #include <public/arch-ia64/hvm/save.h>
-#include <asm/linux/asm/hw_irq.h>
-#include <asm/linux-xen/asm/iosapic.h>
+#include <asm/hw_irq.h>
+#include <asm/iosapic.h>
 
 struct iommu_ops;
 extern struct iommu_ops intel_iommu_ops;
diff -r b432c632ebe8 -r c4c4ba857d8b 
xen/include/asm-ia64/linux-xen/asm/README.origin
--- a/xen/include/asm-ia64/linux-xen/asm/README.origin  Fri Feb 13 19:11:38 
2009 +0900
+++ b/xen/include/asm-ia64/linux-xen/asm/README.origin  Mon Mar 02 16:52:22 
2009 +0900
@@ -10,6 +10,7 @@ gcc_intrin.h          -> linux/include/asm-ia64/
 gcc_intrin.h           -> linux/include/asm-ia64/gcc_intrin.h
 ia64regs.h             -> linux/include/asm-ia64/ia64regs.h
 io.h                   -> linux/include/asm-ia64/io.h
+hw_irq.h               -> linux/include/asm-ia64/hw_irq.h
 kregs.h                        -> linux/include/asm-ia64/kregs.h
 mca_asm.h              -> linux/include/asm-ia64/mca_asm.h
 meminit.h              -> linux/include/asm-ia64/meminit.h
diff -r b432c632ebe8 -r c4c4ba857d8b xen/include/asm-ia64/linux-xen/asm/hw_irq.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/xen/include/asm-ia64/linux-xen/asm/hw_irq.h       Mon Mar 02 16:52:22 
2009 +0900
@@ -0,0 +1,141 @@
+#ifndef _ASM_IA64_HW_IRQ_H
+#define _ASM_IA64_HW_IRQ_H
+
+/*
+ * Copyright (C) 2001-2003 Hewlett-Packard Co
+ *     David Mosberger-Tang <davidm@xxxxxxxxxx>
+ */
+
+#include <linux/interrupt.h>
+#include <linux/sched.h>
+#include <linux/types.h>
+#include <linux/profile.h>
+
+#include <asm/machvec.h>
+#include <asm/ptrace.h>
+#include <asm/smp.h>
+
+typedef u8 ia64_vector;
+
+/*
+ * 0 special
+ *
+ * 1,3-14 are reserved from firmware
+ *
+ * 16-255 (vectored external interrupts) are available
+ *
+ * 15 spurious interrupt (see IVR)
+ *
+ * 16 lowest priority, 255 highest priority
+ *
+ * 15 classes of 16 interrupts each.
+ */
+#define IA64_MIN_VECTORED_IRQ           16
+#define IA64_MAX_VECTORED_IRQ          255
+#define IA64_NUM_VECTORS               256
+
+#define AUTO_ASSIGN_IRQ                        (-1)
+
+#define IA64_SPURIOUS_INT_VECTOR       0x0f
+
+/*
+ * Vectors 0x10-0x1f are used for low priority interrupts, e.g. CMCI.
+ */
+#define IA64_CPEP_VECTOR               0x1c    /* corrected platform error 
polling vector */
+#define IA64_CMCP_VECTOR               0x1d    /* corrected machine-check 
polling vector */
+#define IA64_CPE_VECTOR                        0x1e    /* corrected platform 
error interrupt vector */
+#define IA64_CMC_VECTOR                        0x1f    /* corrected 
machine-check interrupt vector */
+/*
+ * Vectors 0x20-0x2f are reserved for legacy ISA IRQs.
+ */
+#define IA64_FIRST_DEVICE_VECTOR       0x30
+#define IA64_LAST_DEVICE_VECTOR                0xe7
+#define IA64_NUM_DEVICE_VECTORS                (IA64_LAST_DEVICE_VECTOR - 
IA64_FIRST_DEVICE_VECTOR + 1)
+
+#define IA64_MCA_RENDEZ_VECTOR         0xe8    /* MCA rendez interrupt */
+#define IA64_PERFMON_VECTOR            0xee    /* performanc monitor interrupt 
vector */
+#define IA64_TIMER_VECTOR              0xef    /* use highest-prio group 15 
interrupt for timer */
+#define        IA64_MCA_WAKEUP_VECTOR          0xf0    /* MCA wakeup (must be 
>MCA_RENDEZ_VECTOR) */
+#define IA64_IPI_RESCHEDULE            0xfd    /* SMP reschedule */
+#define IA64_IPI_VECTOR                        0xfe    /* inter-processor 
interrupt vector */
+
+/* Used for encoding redirected irqs */
+
+#define IA64_IRQ_REDIRECTED            (1 << 31)
+
+/* IA64 inter-cpu interrupt related definitions */
+
+#define IA64_IPI_DEFAULT_BASE_ADDR     0xfee00000
+
+/* Delivery modes for inter-cpu interrupts */
+enum {
+        IA64_IPI_DM_INT =       0x0,    /* pend an external interrupt */
+        IA64_IPI_DM_PMI =       0x2,    /* pend a PMI */
+        IA64_IPI_DM_NMI =       0x4,    /* pend an NMI (vector 2) */
+        IA64_IPI_DM_INIT =      0x5,    /* pend an INIT interrupt */
+        IA64_IPI_DM_EXTINT =    0x7,    /* pend an 8259-compatible interrupt. 
*/
+};
+
+extern __u8 isa_irq_to_vector_map[16];
+#define isa_irq_to_vector(x)   isa_irq_to_vector_map[(x)]
+
+extern struct hw_interrupt_type irq_type_ia64_lsapic;  /* CPU-internal 
interrupt controller */
+
+extern int assign_irq_vector (int irq);        /* allocate a free vector */
+extern void free_irq_vector (int vector);
+extern void ia64_send_ipi (int cpu, int vector, int delivery_mode, int 
redirect);
+extern void register_percpu_irq (ia64_vector vec, struct irqaction *action);
+#ifdef XEN
+extern int xen_do_IRQ(ia64_vector vector);
+extern int setup_vector(unsigned int vec, struct irqaction *action);
+#endif
+
+static inline void
+hw_resend_irq (struct hw_interrupt_type *h, unsigned int vector)
+{
+       platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
+}
+
+/*
+ * Default implementations for the irq-descriptor API:
+ */
+
+extern irq_desc_t irq_desc[NR_IRQS];
+
+#ifndef CONFIG_IA64_GENERIC
+static inline unsigned int
+__ia64_local_vector_to_irq (ia64_vector vec)
+{
+       return (unsigned int) vec;
+}
+#endif
+
+/*
+ * Next follows the irq descriptor interface.  On IA-64, each CPU supports 256 
interrupt
+ * vectors.  On smaller systems, there is a one-to-one correspondence between 
interrupt
+ * vectors and the Linux irq numbers.  However, larger systems may have 
multiple interrupt
+ * domains meaning that the translation from vector number to irq number 
depends on the
+ * interrupt domain that a CPU belongs to.  This API abstracts such 
platform-dependent
+ * differences and provides a uniform means to translate between vector and 
irq numbers
+ * and to obtain the irq descriptor for a given irq number.
+ */
+
+/* Return a pointer to the irq descriptor for IRQ.  */
+static inline irq_desc_t *
+irq_descp (int irq)
+{
+       return irq_desc + irq;
+}
+
+/*
+ * Convert the local IA-64 vector to the corresponding irq number.  This 
translation is
+ * done in the context of the interrupt domain that the currently executing 
CPU belongs
+ * to.
+ */
+static inline unsigned int
+local_vector_to_irq (ia64_vector vec)
+{
+       return platform_local_vector_to_irq(vec);
+}
+
+#endif /* _ASM_IA64_HW_IRQ_H */
diff -r b432c632ebe8 -r c4c4ba857d8b 
xen/include/asm-ia64/linux/asm/README.origin
--- a/xen/include/asm-ia64/linux/asm/README.origin      Fri Feb 13 19:11:38 
2009 +0900
+++ b/xen/include/asm-ia64/linux/asm/README.origin      Mon Mar 02 16:52:22 
2009 +0900
@@ -17,7 +17,6 @@ fpswa.h                       -> linux/include/asm-ia64/fpsw
 fpswa.h                        -> linux/include/asm-ia64/fpswa.h
 fpu.h                  -> linux/include/asm-ia64/fpu.h
 hdreg.h                        -> linux/include/asm-ia64/hdreg.h
-hw_irq.h               -> linux/include/asm-ia64/hw_irq.h
 intrinsics.h           -> linux/include/asm-ia64/intrinsics.h
 ioctl.h                        -> linux/include/asm-ia64/ioctl.h
 irq.h                  -> linux/include/asm-ia64/irq.h
diff -r b432c632ebe8 -r c4c4ba857d8b xen/include/asm-ia64/linux/asm/hw_irq.h
--- a/xen/include/asm-ia64/linux/asm/hw_irq.h   Fri Feb 13 19:11:38 2009 +0900
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,138 +0,0 @@
-#ifndef _ASM_IA64_HW_IRQ_H
-#define _ASM_IA64_HW_IRQ_H
-
-/*
- * Copyright (C) 2001-2003 Hewlett-Packard Co
- *     David Mosberger-Tang <davidm@xxxxxxxxxx>
- */
-
-#include <linux/interrupt.h>
-#include <linux/sched.h>
-#include <linux/types.h>
-#include <linux/profile.h>
-
-#include <asm/machvec.h>
-#include <asm/ptrace.h>
-#include <asm/smp.h>
-
-typedef u8 ia64_vector;
-
-/*
- * 0 special
- *
- * 1,3-14 are reserved from firmware
- *
- * 16-255 (vectored external interrupts) are available
- *
- * 15 spurious interrupt (see IVR)
- *
- * 16 lowest priority, 255 highest priority
- *
- * 15 classes of 16 interrupts each.
- */
-#define IA64_MIN_VECTORED_IRQ           16
-#define IA64_MAX_VECTORED_IRQ          255
-#define IA64_NUM_VECTORS               256
-
-#define AUTO_ASSIGN_IRQ                        (-1)
-
-#define IA64_SPURIOUS_INT_VECTOR       0x0f
-
-/*
- * Vectors 0x10-0x1f are used for low priority interrupts, e.g. CMCI.
- */
-#define IA64_CPEP_VECTOR               0x1c    /* corrected platform error 
polling vector */
-#define IA64_CMCP_VECTOR               0x1d    /* corrected machine-check 
polling vector */
-#define IA64_CPE_VECTOR                        0x1e    /* corrected platform 
error interrupt vector */
-#define IA64_CMC_VECTOR                        0x1f    /* corrected 
machine-check interrupt vector */
-/*
- * Vectors 0x20-0x2f are reserved for legacy ISA IRQs.
- */
-#define IA64_FIRST_DEVICE_VECTOR       0x30
-#define IA64_LAST_DEVICE_VECTOR                0xe7
-#define IA64_NUM_DEVICE_VECTORS                (IA64_LAST_DEVICE_VECTOR - 
IA64_FIRST_DEVICE_VECTOR + 1)
-
-#define IA64_MCA_RENDEZ_VECTOR         0xe8    /* MCA rendez interrupt */
-#define IA64_PERFMON_VECTOR            0xee    /* performanc monitor interrupt 
vector */
-#define IA64_TIMER_VECTOR              0xef    /* use highest-prio group 15 
interrupt for timer */
-#define        IA64_MCA_WAKEUP_VECTOR          0xf0    /* MCA wakeup (must be 
>MCA_RENDEZ_VECTOR) */
-#define IA64_IPI_RESCHEDULE            0xfd    /* SMP reschedule */
-#define IA64_IPI_VECTOR                        0xfe    /* inter-processor 
interrupt vector */
-
-/* Used for encoding redirected irqs */
-
-#define IA64_IRQ_REDIRECTED            (1 << 31)
-
-/* IA64 inter-cpu interrupt related definitions */
-
-#define IA64_IPI_DEFAULT_BASE_ADDR     0xfee00000
-
-/* Delivery modes for inter-cpu interrupts */
-enum {
-        IA64_IPI_DM_INT =       0x0,    /* pend an external interrupt */
-        IA64_IPI_DM_PMI =       0x2,    /* pend a PMI */
-        IA64_IPI_DM_NMI =       0x4,    /* pend an NMI (vector 2) */
-        IA64_IPI_DM_INIT =      0x5,    /* pend an INIT interrupt */
-        IA64_IPI_DM_EXTINT =    0x7,    /* pend an 8259-compatible interrupt. 
*/
-};
-
-extern __u8 isa_irq_to_vector_map[16];
-#define isa_irq_to_vector(x)   isa_irq_to_vector_map[(x)]
-
-extern struct hw_interrupt_type irq_type_ia64_lsapic;  /* CPU-internal 
interrupt controller */
-
-extern int assign_irq_vector (int irq);        /* allocate a free vector */
-extern void free_irq_vector (int vector);
-extern void ia64_send_ipi (int cpu, int vector, int delivery_mode, int 
redirect);
-extern void register_percpu_irq (ia64_vector vec, struct irqaction *action);
-extern int xen_do_IRQ(ia64_vector vector);
-
-static inline void
-hw_resend_irq (struct hw_interrupt_type *h, unsigned int vector)
-{
-       platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
-}
-
-/*
- * Default implementations for the irq-descriptor API:
- */
-
-extern irq_desc_t irq_desc[NR_IRQS];
-
-#ifndef CONFIG_IA64_GENERIC
-static inline unsigned int
-__ia64_local_vector_to_irq (ia64_vector vec)
-{
-       return (unsigned int) vec;
-}
-#endif
-
-/*
- * Next follows the irq descriptor interface.  On IA-64, each CPU supports 256 
interrupt
- * vectors.  On smaller systems, there is a one-to-one correspondence between 
interrupt
- * vectors and the Linux irq numbers.  However, larger systems may have 
multiple interrupt
- * domains meaning that the translation from vector number to irq number 
depends on the
- * interrupt domain that a CPU belongs to.  This API abstracts such 
platform-dependent
- * differences and provides a uniform means to translate between vector and 
irq numbers
- * and to obtain the irq descriptor for a given irq number.
- */
-
-/* Return a pointer to the irq descriptor for IRQ.  */
-static inline irq_desc_t *
-irq_descp (int irq)
-{
-       return irq_desc + irq;
-}
-
-/*
- * Convert the local IA-64 vector to the corresponding irq number.  This 
translation is
- * done in the context of the interrupt domain that the currently executing 
CPU belongs
- * to.
- */
-static inline unsigned int
-local_vector_to_irq (ia64_vector vec)
-{
-       return platform_local_vector_to_irq(vec);
-}
-
-#endif /* _ASM_IA64_HW_IRQ_H */

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] This is consistent with the x86 version of this function., Xen patchbot-unstable <=