- irq_desc and irq_to_vector machvecs.  SN2 has it's own versions,
    but they're the same as the generic ones
 - kill do do_IRQ and use __do_IRQ directly everywhere
 - kill dead X86 ifdefs
 - move some variable declarations around in irq.c to recuce # of ifdefs


--- 1.54/arch/ia64/kernel/irq.c 2005-01-18 21:06:18 +01:00
+++ edited/arch/ia64/kernel/irq.c       2005-01-20 17:34:07 +01:00
@@ -32,35 +32,7 @@
        printk(KERN_ERR "Unexpected irq vector 0x%x on CPU %u!\n", irq, 
smp_processor_id());
 }
 
-/*
- * do_IRQ handles all normal device IRQ's (the special
- * SMP cross-CPU interrupts have their own specific
- * handlers).
- */
-unsigned int do_IRQ(unsigned long irq, struct pt_regs *regs)
-{
-       return __do_IRQ(irq, regs);
-}
-
-#ifdef CONFIG_SMP
-/*
- * This is updated when the user sets irq affinity via /proc
- */
-cpumask_t __cacheline_aligned pending_irq_cpumask[NR_IRQS];
-static unsigned long pending_irq_redir[BITS_TO_LONGS(NR_IRQS)];
-#endif
-
 #ifdef CONFIG_IA64_GENERIC
-irq_desc_t * __ia64_irq_desc (unsigned int irq)
-{
-       return irq_desc + irq;
-}
-
-ia64_vector __ia64_irq_to_vector (unsigned int irq)
-{
-       return (ia64_vector) irq;
-}
-
 unsigned int __ia64_local_vector_to_irq (ia64_vector vec)
 {
        return (unsigned int) vec;
@@ -113,27 +85,19 @@
                seq_putc(p, '\n');
 skip:
                spin_unlock_irqrestore(&irq_desc[i].lock, flags);
-       } else if (i == NR_IRQS) {
-#if defined(CONFIG_X86_LOCAL_APIC)
-               seq_puts(p, "LOC: ");
-               for (j = 0; j < NR_CPUS; j++)
-                       if (cpu_online(j))
-                               seq_printf(p, "%10u ",
-                                          irq_stat[j].apic_timer_irqs);
-               seq_putc(p, '\n');
-#endif
+       } else if (i == NR_IRQS)
                seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
-#if defined(CONFIG_X86_IO_APIC)
-               seq_printf(p, "MIS: %10u\n", atomic_read(&irq_mis_count));
-#endif
-       }
        return 0;
 }
 
 #ifdef CONFIG_SMP
+/*
+ * This is updated when the user sets irq affinity via /proc
+ */
+cpumask_t __cacheline_aligned pending_irq_cpumask[NR_IRQS];
+static unsigned long pending_irq_redir[BITS_TO_LONGS(NR_IRQS)];
 
 static cpumask_t irq_affinity [NR_IRQS] = { [0 ... NR_IRQS-1] = CPU_MASK_ALL };
-
 static char irq_redir [NR_IRQS]; // = { [0 ... NR_IRQS-1] = 1 };
 
 void set_irq_affinity_info (unsigned int irq, int hwid, int redir)
@@ -250,7 +214,7 @@
        for (irq=0; irq < NR_IRQS; irq++) {
                if (vectors_in_migration[irq]) {
                        vectors_in_migration[irq]=0;
-                       do_IRQ(irq, NULL);
+                       __do_IRQ(irq, NULL);
                }
        }
 
===== arch/ia64/kernel/irq_ia64.c 1.24 vs edited =====
--- 1.24/arch/ia64/kernel/irq_ia64.c    2005-01-18 21:27:58 +01:00
+++ edited/arch/ia64/kernel/irq_ia64.c  2005-01-20 17:33:08 +01:00
@@ -90,8 +90,6 @@
                printk(KERN_WARNING "%s: double free!\n", __FUNCTION__);
 }
 
-extern unsigned int do_IRQ(unsigned long irq, struct pt_regs *regs);
-
 #ifdef CONFIG_SMP
 #      define IS_RESCHEDULE(vec)       (vec == IA64_IPI_RESCHEDULE)
 #else
@@ -150,7 +148,7 @@
                        ia64_setreg(_IA64_REG_CR_TPR, vector);
                        ia64_srlz_d();
 
-                       do_IRQ(local_vector_to_irq(vector), regs);
+                       __do_IRQ(local_vector_to_irq(vector), regs);
 
                        /*
                         * Disable interrupts and send EOI:
@@ -201,7 +199,7 @@
                         * Probably could shared code.
                         */
                        vectors_in_migration[local_vector_to_irq(vector)]=0;
-                       do_IRQ(local_vector_to_irq(vector), NULL);
+                       __do_IRQ(local_vector_to_irq(vector), NULL);
 
                        /*
                         * Disable interrupts and send EOI
===== arch/ia64/sn/kernel/irq.c 1.29 vs edited =====
--- 1.29/arch/ia64/sn/kernel/irq.c      2004-11-24 00:45:34 +01:00
+++ edited/arch/ia64/sn/kernel/irq.c    2005-01-20 17:29:46 +01:00
@@ -202,16 +202,6 @@
        sn_set_affinity_irq
 };
 
-struct irq_desc *sn_irq_desc(unsigned int irq)
-{
-       return (irq_desc + irq);
-}
-
-u8 sn_irq_to_vector(unsigned int irq)
-{
-       return irq;
-}
-
 unsigned int sn_local_vector_to_irq(u8 vector)
 {
        return (CPU_VECTOR_TO_IRQ(smp_processor_id(), vector));
===== include/asm-ia64/hw_irq.h 1.14 vs edited =====
--- 1.14/include/asm-ia64/hw_irq.h      2005-01-18 21:06:19 +01:00
+++ edited/include/asm-ia64/hw_irq.h    2005-01-20 17:30:45 +01:00
@@ -99,18 +99,6 @@
 extern irq_desc_t irq_desc[NR_IRQS];
 
 #ifndef CONFIG_IA64_GENERIC
-static inline irq_desc_t *
-__ia64_irq_desc (unsigned int irq)
-{
-       return irq_desc + irq;
-}
-
-static inline ia64_vector
-__ia64_irq_to_vector (unsigned int irq)
-{
-       return (ia64_vector) irq;
-}
-
 static inline unsigned int
 __ia64_local_vector_to_irq (ia64_vector vec)
 {
@@ -132,14 +120,14 @@
 static inline irq_desc_t *
 irq_descp (int irq)
 {
-       return platform_irq_desc(irq);
+       return irq_desc + irq;
 }
 
 /* Extract the IA-64 vector that corresponds to IRQ.  */
 static inline ia64_vector
 irq_to_vector (int irq)
 {
-       return platform_irq_to_vector(irq);
+       return (ia64_vector) irq;
 }
 
 /*
===== include/asm-ia64/machvec.h 1.31 vs edited =====
--- 1.31/include/asm-ia64/machvec.h     2005-01-10 23:04:10 +01:00
+++ edited/include/asm-ia64/machvec.h   2005-01-20 17:31:00 +01:00
@@ -17,7 +17,6 @@
 struct device;
 struct pt_regs;
 struct scatterlist;
-struct irq_desc;
 struct page;
 struct mm_struct;
 struct pci_bus;
@@ -29,8 +28,6 @@
 typedef void ia64_mv_timer_interrupt_t (int, void *, struct pt_regs *);
 typedef void ia64_mv_global_tlb_purge_t (unsigned long, unsigned long, 
unsigned long);
 typedef void ia64_mv_tlb_migrate_finish_t (struct mm_struct *);
-typedef struct irq_desc *ia64_mv_irq_desc (unsigned int);
-typedef u8 ia64_mv_irq_to_vector (unsigned int);
 typedef unsigned int ia64_mv_local_vector_to_irq (u8);
 typedef char *ia64_mv_pci_get_legacy_mem_t (struct pci_bus *);
 typedef int ia64_mv_pci_legacy_read_t (struct pci_bus *, u16 port, u32 *val,
@@ -130,8 +127,6 @@
 #  define platform_dma_sync_sg_for_device ia64_mv.dma_sync_sg_for_device
 #  define platform_dma_mapping_error           ia64_mv.dma_mapping_error
 #  define platform_dma_supported       ia64_mv.dma_supported
-#  define platform_irq_desc            ia64_mv.irq_desc
-#  define platform_irq_to_vector       ia64_mv.irq_to_vector
 #  define platform_local_vector_to_irq ia64_mv.local_vector_to_irq
 #  define platform_pci_get_legacy_mem  ia64_mv.pci_get_legacy_mem
 #  define platform_pci_legacy_read     ia64_mv.pci_legacy_read
@@ -180,8 +175,6 @@
        ia64_mv_dma_sync_sg_for_device *dma_sync_sg_for_device;
        ia64_mv_dma_mapping_error *dma_mapping_error;
        ia64_mv_dma_supported *dma_supported;
-       ia64_mv_irq_desc *irq_desc;
-       ia64_mv_irq_to_vector *irq_to_vector;
        ia64_mv_local_vector_to_irq *local_vector_to_irq;
        ia64_mv_pci_get_legacy_mem_t *pci_get_legacy_mem;
        ia64_mv_pci_legacy_read_t *pci_legacy_read;
@@ -226,8 +219,6 @@
        platform_dma_sync_sg_for_device,        \
        platform_dma_mapping_error,                     \
        platform_dma_supported,                 \
-       platform_irq_desc,                      \
-       platform_irq_to_vector,                 \
        platform_local_vector_to_irq,           \
        platform_pci_get_legacy_mem,            \
        platform_pci_legacy_read,               \
@@ -337,12 +328,6 @@
 #endif
 #ifndef platform_dma_supported
 # define  platform_dma_supported       swiotlb_dma_supported
-#endif
-#ifndef platform_irq_desc
-# define platform_irq_desc             __ia64_irq_desc
-#endif
-#ifndef platform_irq_to_vector
-# define platform_irq_to_vector                __ia64_irq_to_vector
 #endif
 #ifndef platform_local_vector_to_irq
 # define platform_local_vector_to_irq  __ia64_local_vector_to_irq
===== include/asm-ia64/machvec_init.h 1.9 vs edited =====
--- 1.9/include/asm-ia64/machvec_init.h 2005-01-10 23:04:16 +01:00
+++ edited/include/asm-ia64/machvec_init.h      2005-01-20 17:31:04 +01:00
@@ -2,8 +2,6 @@
 
 extern ia64_mv_send_ipi_t ia64_send_ipi;
 extern ia64_mv_global_tlb_purge_t ia64_global_tlb_purge;
-extern ia64_mv_irq_desc __ia64_irq_desc;
-extern ia64_mv_irq_to_vector __ia64_irq_to_vector;
 extern ia64_mv_local_vector_to_irq __ia64_local_vector_to_irq;
 extern ia64_mv_pci_get_legacy_mem_t ia64_pci_get_legacy_mem;
 extern ia64_mv_pci_legacy_read_t ia64_pci_legacy_read;
===== include/asm-ia64/machvec_sn2.h 1.17 vs edited =====
--- 1.17/include/asm-ia64/machvec_sn2.h 2005-01-10 23:04:23 +01:00
+++ edited/include/asm-ia64/machvec_sn2.h       2005-01-20 17:30:06 +01:00
@@ -40,8 +40,6 @@
 extern ia64_mv_timer_interrupt_t sn_timer_interrupt;
 extern ia64_mv_global_tlb_purge_t sn2_global_tlb_purge;
 extern ia64_mv_tlb_migrate_finish_t    sn_tlb_migrate_finish;
-extern ia64_mv_irq_desc sn_irq_desc;
-extern ia64_mv_irq_to_vector sn_irq_to_vector;
 extern ia64_mv_local_vector_to_irq sn_local_vector_to_irq;
 extern ia64_mv_pci_get_legacy_mem_t sn_pci_get_legacy_mem;
 extern ia64_mv_pci_legacy_read_t sn_pci_legacy_read;
@@ -105,8 +103,6 @@
 #define platform_readw_relaxed         __sn_readw_relaxed
 #define platform_readl_relaxed         __sn_readl_relaxed
 #define platform_readq_relaxed         __sn_readq_relaxed
-#define platform_irq_desc              sn_irq_desc
-#define platform_irq_to_vector         sn_irq_to_vector
 #define platform_local_vector_to_irq   sn_local_vector_to_irq
 #define platform_pci_get_legacy_mem    sn_pci_get_legacy_mem
 #define platform_pci_legacy_read       sn_pci_legacy_read
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to