[POWERPC] Fix up after irq changes
Olaf Hering [Sat, 7 Oct 2006 12:08:26 +0000 (22:08 +1000)]
Remove struct pt_regs * from all handlers.
Also remove the regs argument from get_irq() functions.
Compile tested with arch/powerpc/config/* and
arch/ppc/configs/prep_defconfig

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>

40 files changed:
arch/powerpc/kernel/ibmebus.c
arch/powerpc/kernel/irq.c
arch/powerpc/kernel/time.c
arch/powerpc/platforms/82xx/mpc82xx_ads.c
arch/powerpc/platforms/85xx/mpc85xx_ads.c
arch/powerpc/platforms/85xx/mpc85xx_cds.c
arch/powerpc/platforms/86xx/mpc86xx_hpcn.c
arch/powerpc/platforms/cell/interrupt.c
arch/powerpc/platforms/chrp/setup.c
arch/powerpc/platforms/embedded6xx/mpc7448_hpc2.c
arch/powerpc/platforms/iseries/irq.c
arch/powerpc/platforms/iseries/irq.h
arch/powerpc/platforms/iseries/lpevents.c
arch/powerpc/platforms/iseries/mf.c
arch/powerpc/platforms/iseries/viopath.c
arch/powerpc/platforms/powermac/pic.c
arch/powerpc/platforms/powermac/pic.h
arch/powerpc/platforms/powermac/smp.c
arch/powerpc/platforms/pseries/setup.c
arch/powerpc/platforms/pseries/xics.c
arch/powerpc/sysdev/cpm2_pic.c
arch/powerpc/sysdev/cpm2_pic.h
arch/powerpc/sysdev/i8259.c
arch/powerpc/sysdev/ipic.c
arch/powerpc/sysdev/mpic.c
arch/powerpc/sysdev/qe_lib/qe_ic.c
arch/powerpc/sysdev/tsi108_pci.c
arch/ppc/platforms/85xx/mpc8560_ads.c
arch/ppc/platforms/85xx/mpc85xx_cds_common.c
arch/ppc/platforms/85xx/stx_gp3.c
arch/ppc/platforms/85xx/tqm85xx.c
arch/ppc/syslib/i8259.c
include/asm-powerpc/i8259.h
include/asm-powerpc/ibmebus.h
include/asm-powerpc/ipic.h
include/asm-powerpc/iseries/hv_lp_event.h
include/asm-powerpc/iseries/it_lp_queue.h
include/asm-powerpc/machdep.h
include/asm-powerpc/mpic.h
include/asm-ppc/machdep.h

index 124dbcb..da9fe25 100644 (file)
@@ -319,7 +319,7 @@ EXPORT_SYMBOL(ibmebus_unregister_driver);
 
 int ibmebus_request_irq(struct ibmebus_dev *dev,
                        u32 ist, 
-                       irqreturn_t (*handler)(int, void*, struct pt_regs *),
+                       irqreturn_t (*handler)(int, void*),
                        unsigned long irq_flags, const char * devname,
                        void *dev_id)
 {
index 5deaab3..829ac18 100644 (file)
@@ -217,7 +217,7 @@ void do_IRQ(struct pt_regs *regs)
         * The value -2 is for buggy hardware and means that this IRQ
         * has already been handled. -- Tom
         */
-       irq = ppc_md.get_irq(regs);
+       irq = ppc_md.get_irq();
 
        if (irq != NO_IRQ && irq != NO_IRQ_IGNORE) {
 #ifdef CONFIG_IRQSTACKS
index d210d0a..5b59bc1 100644 (file)
@@ -706,7 +706,7 @@ void timer_interrupt(struct pt_regs * regs)
 
 #ifdef CONFIG_PPC_ISERIES
        if (hvlpevent_is_pending())
-               process_hvlpevents(regs);
+               process_hvlpevents();
 #endif
 
 #ifdef CONFIG_PPC64
index 4276f08..0cea42a 100644 (file)
@@ -384,8 +384,7 @@ struct hw_interrupt_type m82xx_pci_ic = {
 };
 
 static void
-m82xx_pci_irq_demux(unsigned int irq, struct irq_desc *desc,
-                   struct pt_regs *regs)
+m82xx_pci_irq_demux(unsigned int irq, struct irq_desc *desc)
 {
        unsigned long stat, mask, pend;
        int bit;
@@ -398,7 +397,7 @@ m82xx_pci_irq_demux(unsigned int irq, struct irq_desc *desc,
                        break;
                for (bit = 0; pend != 0; ++bit, pend <<= 1) {
                        if (pend & 0x80000000)
-                               __do_IRQ(pci_int_base + bit, regs);
+                               __do_IRQ(pci_int_base + bit);
                }
        }
 }
index 8af7126..d3e669d 100644 (file)
@@ -66,12 +66,11 @@ mpc85xx_pcibios_fixup(void)
 
 #ifdef CONFIG_CPM2
 
-static void cpm2_cascade(unsigned int irq, struct irq_desc *desc,
-                        struct pt_regs *regs)
+static void cpm2_cascade(unsigned int irq, struct irq_desc *desc)
 {
        int cascade_irq;
 
-       while ((cascade_irq = cpm2_get_irq(regs)) >= 0) {
+       while ((cascade_irq = cpm2_get_irq()) >= 0) {
                generic_handle_irq(cascade_irq);
        }
        desc->chip->eoi(irq);
index b92fc69..953cd5d 100644 (file)
@@ -132,10 +132,9 @@ mpc85xx_cds_pcibios_fixup(void)
 
 #ifdef CONFIG_PPC_I8259
 #warning The i8259 PIC support is currently broken
-static void mpc85xx_8259_cascade(unsigned int irq, struct
-               irq_desc *desc, struct pt_regs *regs)
+static void mpc85xx_8259_cascade(unsigned int irq, struct irq_desc *desc)
 {
-       unsigned int cascade_irq = i8259_irq(regs);
+       unsigned int cascade_irq = i8259_irq();
 
        if (cascade_irq != NO_IRQ)
                generic_handle_irq(cascade_irq);
@@ -150,8 +149,10 @@ void __init mpc85xx_cds_pic_init(void)
        struct mpic *mpic;
        struct resource r;
        struct device_node *np = NULL;
+#ifdef CONFIG_PPC_I8259
        struct device_node *cascade_node = NULL;
        int cascade_irq;
+#endif
 
        np = of_find_node_by_type(np, "open-pic");
 
index 8218703..1a1c226 100644 (file)
@@ -53,10 +53,9 @@ unsigned long pci_dram_offset = 0;
 
 
 #ifdef CONFIG_PCI
-static void mpc86xx_8259_cascade(unsigned int irq, struct irq_desc *desc,
-                                struct pt_regs *regs)
+static void mpc86xx_8259_cascade(unsigned int irq, struct irq_desc *desc)
 {
-       unsigned int cascade_irq = i8259_irq(regs);
+       unsigned int cascade_irq = i8259_irq();
        if (cascade_irq != NO_IRQ)
                generic_handle_irq(cascade_irq);
        desc->chip->eoi(irq);
index f8768b0..a914c12 100644 (file)
@@ -98,8 +98,7 @@ static void iic_ioexc_eoi(unsigned int irq)
 {
 }
 
-static void iic_ioexc_cascade(unsigned int irq, struct irq_desc *desc,
-                           struct pt_regs *regs)
+static void iic_ioexc_cascade(unsigned int irq, struct irq_desc *desc)
 {
        struct cbe_iic_regs __iomem *node_iic = (void __iomem *)desc->handler_data;
        unsigned int base = (irq & 0xffffff00) | IIC_IRQ_TYPE_IOEXC;
@@ -140,7 +139,7 @@ static struct irq_chip iic_ioexc_chip = {
 };
 
 /* Get an IRQ number from the pending state register of the IIC */
-static unsigned int iic_get_irq(struct pt_regs *regs)
+static unsigned int iic_get_irq(void)
 {
        struct cbe_iic_pending_bits pending;
        struct iic *iic;
index 35cd7a5..cae3d13 100644 (file)
@@ -70,7 +70,7 @@ unsigned long event_scan_interval;
  * has to include <linux/interrupt.h> (to get irqreturn_t), which
  * causes all sorts of problems.  -- paulus
  */
-extern irqreturn_t xmon_irq(int, void *, struct pt_regs *);
+extern irqreturn_t xmon_irq(int, void *);
 
 extern unsigned long loops_per_jiffy;
 
@@ -335,10 +335,9 @@ chrp_event_scan(unsigned long unused)
                  jiffies + event_scan_interval);
 }
 
-static void chrp_8259_cascade(unsigned int irq, struct irq_desc *desc,
-                             struct pt_regs *regs)
+static void chrp_8259_cascade(unsigned int irq, struct irq_desc *desc)
 {
-       unsigned int cascade_irq = i8259_irq(regs);
+       unsigned int cascade_irq = i8259_irq();
        if (cascade_irq != NO_IRQ)
                generic_handle_irq(cascade_irq);
        desc->chip->eoi(irq);
index cb6f084..bdb475c 100644 (file)
@@ -61,8 +61,7 @@ pci_dram_offset = MPC7448_HPC2_PCI_MEM_OFFSET;
 extern int tsi108_setup_pci(struct device_node *dev);
 extern void _nmask_and_or_msr(unsigned long nmask, unsigned long or_val);
 extern void tsi108_pci_int_init(void);
-extern void tsi108_irq_cascade(unsigned int irq, struct irq_desc *desc,
-                           struct pt_regs *regs);
+extern void tsi108_irq_cascade(unsigned int irq, struct irq_desc *desc);
 
 int mpc7448_hpc2_exclude_device(u_char bus, u_char devfn)
 {
@@ -200,7 +199,7 @@ static void __init mpc7448_hpc2_init_IRQ(void)
        tsi_pic = of_find_node_by_type(NULL, "open-pic");
        if (tsi_pic) {
                unsigned int size;
-               void *prop = get_property(tsi_pic, "reg", &size);
+               const void *prop = get_property(tsi_pic, "reg", &size);
                mpic_paddr = of_translate_address(tsi_pic, prop);
        }
 
index 44c2456..5225abf 100644 (file)
@@ -85,7 +85,7 @@ static DEFINE_SPINLOCK(pending_irqs_lock);
 static int num_pending_irqs;
 static int pending_irqs[NR_IRQS];
 
-static void int_received(struct pci_event *event, struct pt_regs *regs)
+static void int_received(struct pci_event *event)
 {
        int irq;
 
@@ -143,11 +143,11 @@ static void int_received(struct pci_event *event, struct pt_regs *regs)
        }
 }
 
-static void pci_event_handler(struct HvLpEvent *event, struct pt_regs *regs)
+static void pci_event_handler(struct HvLpEvent *event)
 {
        if (event && (event->xType == HvLpEvent_Type_PciIo)) {
                if (hvlpevent_is_int(event))
-                       int_received((struct pci_event *)event, regs);
+                       int_received((struct pci_event *)event);
                else
                        printk(KERN_ERR
                                "pci_event_handler: unexpected ack received\n");
@@ -305,7 +305,7 @@ int __init iSeries_allocate_IRQ(HvBusNumber bus,
 /*
  * Get the next pending IRQ.
  */
-unsigned int iSeries_get_irq(struct pt_regs *regs)
+unsigned int iSeries_get_irq(void)
 {
        int irq = NO_IRQ_IGNORE;
 
@@ -316,7 +316,7 @@ unsigned int iSeries_get_irq(struct pt_regs *regs)
        }
 #endif /* CONFIG_SMP */
        if (hvlpevent_is_pending())
-               process_hvlpevents(regs);
+               process_hvlpevents();
 
 #ifdef CONFIG_PCI
        if (num_pending_irqs) {
index 1ee8985..69f1b43 100644 (file)
@@ -4,6 +4,6 @@
 extern void iSeries_init_IRQ(void);
 extern int  iSeries_allocate_IRQ(HvBusNumber, HvSubBusNumber, u32);
 extern void iSeries_activate_IRQs(void);
-extern unsigned int iSeries_get_irq(struct pt_regs *);
+extern unsigned int iSeries_get_irq(void);
 
 #endif /* _ISERIES_IRQ_H */
index 98c1c24..e3e929e 100644 (file)
@@ -116,7 +116,7 @@ static void hvlpevent_clear_valid(struct HvLpEvent * event)
        hvlpevent_invalidate(event);
 }
 
-void process_hvlpevents(struct pt_regs *regs)
+void process_hvlpevents(void)
 {
        struct HvLpEvent * event;
 
@@ -144,7 +144,7 @@ void process_hvlpevents(struct pt_regs *regs)
                                __get_cpu_var(hvlpevent_counts)[event->xType]++;
                        if (event->xType < HvLpEvent_Type_NumTypes &&
                                        lpEventHandler[event->xType])
-                               lpEventHandler[event->xType](event, regs);
+                               lpEventHandler[event->xType](event);
                        else
                                printk(KERN_INFO "Unexpected Lp Event type=%d\n", event->xType );
 
index 1983b64..b5737d6 100644 (file)
@@ -513,7 +513,7 @@ static void handle_ack(struct io_mf_lp_event *event)
  * parse it enough to know if it is an interrupt or an
  * acknowledge.
  */
-static void hv_handler(struct HvLpEvent *event, struct pt_regs *regs)
+static void hv_handler(struct HvLpEvent *event)
 {
        if ((event != NULL) && (event->xType == HvLpEvent_Type_MachineFac)) {
                if (hvlpevent_is_ack(event))
@@ -847,7 +847,7 @@ static int mf_get_boot_rtc(struct rtc_time *tm)
        /* We need to poll here as we are not yet taking interrupts */
        while (rtc_data.busy) {
                if (hvlpevent_is_pending())
-                       process_hvlpevents(NULL);
+                       process_hvlpevents();
        }
        return rtc_set_tm(rtc_data.rc, rtc_data.ce_msg.ce_msg, tm);
 }
index 9baa4ee..04e07e5 100644 (file)
@@ -378,7 +378,7 @@ void vio_set_hostlp(void)
 }
 EXPORT_SYMBOL(vio_set_hostlp);
 
-static void vio_handleEvent(struct HvLpEvent *event, struct pt_regs *regs)
+static void vio_handleEvent(struct HvLpEvent *event)
 {
        HvLpIndex remoteLp;
        int subtype = (event->xSubtype & VIOMAJOR_SUBTYPE_MASK)
index 5da6778..39db128 100644 (file)
@@ -42,7 +42,7 @@
  * has to include <linux/interrupt.h> (to get irqreturn_t), which
  * causes all sorts of problems.  -- paulus
  */
-extern irqreturn_t xmon_irq(int, void *, struct pt_regs *);
+extern irqreturn_t xmon_irq(int, void *);
 
 #ifdef CONFIG_PPC32
 struct pmac_irq_hw {
@@ -210,7 +210,7 @@ static struct irq_chip pmac_pic = {
        .retrigger      = pmac_retrigger,
 };
 
-static irqreturn_t gatwick_action(int cpl, void *dev_id, struct pt_regs *regs)
+static irqreturn_t gatwick_action(int cpl, void *dev_id)
 {
        unsigned long flags;
        int irq, bits;
@@ -235,18 +235,18 @@ static irqreturn_t gatwick_action(int cpl, void *dev_id, struct pt_regs *regs)
        return rc;
 }
 
-static unsigned int pmac_pic_get_irq(struct pt_regs *regs)
+static unsigned int pmac_pic_get_irq(void)
 {
        int irq;
        unsigned long bits = 0;
        unsigned long flags;
 
 #ifdef CONFIG_SMP
-       void psurge_smp_message_recv(struct pt_regs *);
+       void psurge_smp_message_recv(void);
 
                /* IPI's are a hack on the powersurge -- Cort */
                if ( smp_processor_id() != 0 ) {
-               psurge_smp_message_recv(regs);
+               psurge_smp_message_recv();
                return NO_IRQ_IGNORE;   /* ignore, already handled */
         }
 #endif /* CONFIG_SMP */
@@ -444,7 +444,7 @@ static void pmac_u3_cascade(unsigned int irq, struct irq_desc *desc)
 {
        struct mpic *mpic = desc->handler_data;
 
-       unsigned int cascade_irq = mpic_get_one_irq(mpic, get_irq_regs());
+       unsigned int cascade_irq = mpic_get_one_irq(mpic);
        if (cascade_irq != NO_IRQ)
                generic_handle_irq(cascade_irq);
        desc->chip->eoi(irq);
index 664103d..c44c89f 100644 (file)
@@ -5,7 +5,7 @@
 
 extern struct hw_interrupt_type pmac_pic;
 
-void pmac_pic_init(void);
-int pmac_get_irq(struct pt_regs *regs);
+extern void pmac_pic_init(void);
+extern int pmac_get_irq(void);
 
 #endif /* __PPC_PLATFORMS_PMAC_PIC_H */
index 1949b65..574cd20 100644 (file)
@@ -160,7 +160,7 @@ static inline void psurge_clr_ipi(int cpu)
  */
 static unsigned long psurge_smp_message[NR_CPUS];
 
-void psurge_smp_message_recv(struct pt_regs *regs)
+void psurge_smp_message_recv(void)
 {
        int cpu = smp_processor_id();
        int msg;
@@ -174,12 +174,12 @@ void psurge_smp_message_recv(struct pt_regs *regs)
        /* make sure there is a message there */
        for (msg = 0; msg < 4; msg++)
                if (test_and_clear_bit(msg, &psurge_smp_message[cpu]))
-                       smp_message_recv(msg, regs);
+                       smp_message_recv(msg);
 }
 
-irqreturn_t psurge_primary_intr(int irq, void *d, struct pt_regs *regs)
+irqreturn_t psurge_primary_intr(int irq, void *d)
 {
-       psurge_smp_message_recv(regs);
+       psurge_smp_message_recv();
        return IRQ_HANDLED;
 }
 
index ad9aec2..89a8119 100644 (file)
@@ -123,7 +123,7 @@ static void __init fwnmi_init(void)
 
 void pseries_8259_cascade(unsigned int irq, struct irq_desc *desc)
 {
-       unsigned int cascade_irq = i8259_irq(get_irq_regs());
+       unsigned int cascade_irq = i8259_irq();
        if (cascade_irq != NO_IRQ)
                generic_handle_irq(cascade_irq);
        desc->chip->eoi(irq);
index f6bd2f2..d071abe 100644 (file)
@@ -308,14 +308,14 @@ static inline unsigned int xics_remap_irq(unsigned int vec)
        return NO_IRQ;
 }
 
-static unsigned int xics_get_irq_direct(struct pt_regs *regs)
+static unsigned int xics_get_irq_direct(void)
 {
        unsigned int cpu = smp_processor_id();
 
        return xics_remap_irq(direct_xirr_info_get(cpu));
 }
 
-static unsigned int xics_get_irq_lpar(struct pt_regs *regs)
+static unsigned int xics_get_irq_lpar(void)
 {
        unsigned int cpu = smp_processor_id();
 
index 28b0189..767ee66 100644 (file)
@@ -147,7 +147,7 @@ static struct irq_chip cpm2_pic = {
        .end = cpm2_end_irq,
 };
 
-unsigned int cpm2_get_irq(struct pt_regs *regs)
+unsigned int cpm2_get_irq(void)
 {
        int irq;
        unsigned long bits;
index 3c513e5..2840616 100644 (file)
@@ -3,7 +3,7 @@
 
 extern intctl_cpm2_t *cpm2_intctl;
 
-extern unsigned int cpm2_get_irq(struct pt_regs *regs);
+extern unsigned int cpm2_get_irq(void);
 
 extern void cpm2_pic_init(struct device_node*);
 
index 26a6a3b..0450265 100644 (file)
@@ -34,7 +34,7 @@ static struct irq_host *i8259_host;
  * which is called.  It should be noted that polling is broken on some
  * IBM and Motorola PReP boxes so we must use the int-ack feature on them.
  */
-unsigned int i8259_irq(struct pt_regs *regs)
+unsigned int i8259_irq(void)
 {
        int irq;
        int lock = 0;
index 6ebdae8..bc4d4a7 100644 (file)
@@ -709,7 +709,7 @@ void ipic_clear_mcp_status(u32 mask)
 }
 
 /* Return an interrupt vector or NO_IRQ if no interrupt is pending. */
-unsigned int ipic_get_irq(struct pt_regs *regs)
+unsigned int ipic_get_irq(void)
 {
        int irq;
 
index 1952155..ba4833f 100644 (file)
@@ -1217,7 +1217,7 @@ void mpic_send_ipi(unsigned int ipi_no, unsigned int cpu_mask)
                       mpic_physmask(cpu_mask & cpus_addr(cpu_online_map)[0]));
 }
 
-unsigned int mpic_get_one_irq(struct mpic *mpic, struct pt_regs *regs)
+unsigned int mpic_get_one_irq(struct mpic *mpic)
 {
        u32 src;
 
@@ -1230,13 +1230,13 @@ unsigned int mpic_get_one_irq(struct mpic *mpic, struct pt_regs *regs)
        return irq_linear_revmap(mpic->irqhost, src);
 }
 
-unsigned int mpic_get_irq(struct pt_regs *regs)
+unsigned int mpic_get_irq(void)
 {
        struct mpic *mpic = mpic_primary;
 
        BUG_ON(mpic == NULL);
 
-       return mpic_get_one_irq(mpic, regs);
+       return mpic_get_one_irq(mpic);
 }
 
 
index 0dec010..6995f51 100644 (file)
@@ -300,7 +300,7 @@ static struct irq_host_ops qe_ic_host_ops = {
 };
 
 /* Return an interrupt vector or NO_IRQ if no interrupt is pending. */
-unsigned int qe_ic_get_low_irq(struct qe_ic *qe_ic, struct pt_regs *regs)
+unsigned int qe_ic_get_low_irq(struct qe_ic *qe_ic)
 {
        int irq;
 
@@ -316,7 +316,7 @@ unsigned int qe_ic_get_low_irq(struct qe_ic *qe_ic, struct pt_regs *regs)
 }
 
 /* Return an interrupt vector or NO_IRQ if no interrupt is pending. */
-unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic, struct pt_regs *regs)
+unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic)
 {
        int irq;
 
@@ -333,13 +333,12 @@ unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic, struct pt_regs *regs)
 
 /* FIXME: We mask all the QE Low interrupts while handling.  We should
  * let other interrupt come in, but BAD interrupts are generated */
-void fastcall qe_ic_cascade_low(unsigned int irq, struct irq_desc *desc,
-                               struct pt_regs *regs)
+void fastcall qe_ic_cascade_low(unsigned int irq, struct irq_desc *desc)
 {
        struct qe_ic *qe_ic = desc->handler_data;
        struct irq_chip *chip = irq_desc[irq].chip;
 
-       unsigned int cascade_irq = qe_ic_get_low_irq(qe_ic, regs);
+       unsigned int cascade_irq = qe_ic_get_low_irq(qe_ic);
 
        chip->mask_ack(irq);
        if (cascade_irq != NO_IRQ)
@@ -349,13 +348,12 @@ void fastcall qe_ic_cascade_low(unsigned int irq, struct irq_desc *desc,
 
 /* FIXME: We mask all the QE High interrupts while handling.  We should
  * let other interrupt come in, but BAD interrupts are generated */
-void fastcall qe_ic_cascade_high(unsigned int irq, struct irq_desc *desc,
-                                struct pt_regs *regs)
+void fastcall qe_ic_cascade_high(unsigned int irq, struct irq_desc *desc)
 {
        struct qe_ic *qe_ic = desc->handler_data;
        struct irq_chip *chip = irq_desc[irq].chip;
 
-       unsigned int cascade_irq = qe_ic_get_high_irq(qe_ic, regs);
+       unsigned int cascade_irq = qe_ic_get_high_irq(qe_ic);
 
        chip->mask_ack(irq);
        if (cascade_irq != NO_IRQ)
index 14f4a1a..322f86e 100644 (file)
@@ -405,8 +405,7 @@ void __init tsi108_pci_int_init(void)
        init_pci_source();
 }
 
-void tsi108_irq_cascade(unsigned int irq, struct irq_desc *desc,
-                           struct pt_regs *regs)
+void tsi108_irq_cascade(unsigned int irq, struct irq_desc *desc)
 {
        unsigned int cascade_irq = get_pci_source();
        if (cascade_irq != NO_IRQ)
index 94badaf..14ecec7 100644 (file)
@@ -211,10 +211,10 @@ mpc8560ads_setup_arch(void)
 #endif
 }
 
-static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t cpm2_cascade(int irq, void *dev_id)
 {
-       while ((irq = cpm2_get_irq(regs)) >= 0)
-               __do_IRQ(irq, regs);
+       while ((irq = cpm2_get_irq()) >= 0)
+               __do_IRQ(irq);
        return IRQ_HANDLED;
 }
 
index 7520458..5ce0f69 100644 (file)
@@ -127,10 +127,10 @@ mpc85xx_cds_show_cpuinfo(struct seq_file *m)
 }
 
 #ifdef CONFIG_CPM2
-static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t cpm2_cascade(int irq, void *dev_id)
 {
-       while((irq = cpm2_get_irq(regs)) >= 0)
-               __do_IRQ(irq, regs);
+       while((irq = cpm2_get_irq()) >= 0)
+               __do_IRQ(irq);
        return IRQ_HANDLED;
 }
 
index 495aa79..4bb18ab 100644 (file)
@@ -156,10 +156,10 @@ gp3_setup_arch(void)
        printk ("bi_immr_base = %8.8lx\n", binfo->bi_immr_base);
 }
 
-static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t cpm2_cascade(int irq, void *dev_id)
 {
-       while ((irq = cpm2_get_irq(regs)) >= 0)
-               __do_IRQ(irq, regs);
+       while ((irq = cpm2_get_irq()) >= 0)
+               __do_IRQ(irq);
 
        return IRQ_HANDLED;
 }
index 189ed41..dd45f2e 100644 (file)
@@ -181,10 +181,10 @@ tqm85xx_setup_arch(void)
 }
 
 #ifdef CONFIG_MPC8560
-static irqreturn_t cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t cpm2_cascade(int irq, void *dev_id)
 {
-       while ((irq = cpm2_get_irq(regs)) >= 0)
-               __do_IRQ(irq, regs);
+       while ((irq = cpm2_get_irq()) >= 0)
+               __do_IRQ(irq);
        return IRQ_HANDLED;
 }
 
index eb35353..a43dda5 100644 (file)
@@ -28,7 +28,7 @@ static int i8259_pic_irq_offset;
  * which is called.  It should be noted that polling is broken on some
  * IBM and Motorola PReP boxes so we must use the int-ack feature on them.
  */
-int i8259_irq(struct pt_regs *regs)
+int i8259_irq(void)
 {
        int irq;
 
index c80e113..78489fb 100644 (file)
@@ -6,10 +6,10 @@
 
 #ifdef CONFIG_PPC_MERGE
 extern void i8259_init(struct device_node *node, unsigned long intack_addr);
-extern unsigned int i8259_irq(struct pt_regs *regs);
+extern unsigned int i8259_irq(void);
 #else
 extern void i8259_init(unsigned long intack_addr, int offset);
-extern int i8259_irq(struct pt_regs *regs);
+extern int i8259_irq(void);
 #endif
 
 #endif /* __KERNEL__ */
index 7ab195a..9d25f20 100644 (file)
@@ -65,7 +65,7 @@ void ibmebus_unregister_driver(struct ibmebus_driver *drv);
 
 int ibmebus_request_irq(struct ibmebus_dev *dev,
                        u32 ist, 
-                       irqreturn_t (*handler)(int, void*, struct pt_regs *),
+                       irqreturn_t (*handler)(int, void*),
                        unsigned long irq_flags, const char * devname,
                        void *dev_id);
 void ibmebus_free_irq(struct ibmebus_dev *dev, u32 ist, void *dev_id);
index 1ce09a3..9fbb034 100644 (file)
@@ -79,12 +79,12 @@ extern void ipic_clear_mcp_status(u32 mask);
 
 #ifdef CONFIG_PPC_MERGE
 extern void ipic_init(struct device_node *node, unsigned int flags);
-extern unsigned int ipic_get_irq(struct pt_regs *regs);
+extern unsigned int ipic_get_irq(void);
 #else
 extern void ipic_init(phys_addr_t phys_addr, unsigned int flags,
                unsigned int irq_offset,
                unsigned char *senses, unsigned int senses_count);
-extern int ipic_get_irq(struct pt_regs *regs);
+extern int ipic_get_irq(void);
 #endif
 
 #endif /* __ASM_IPIC_H__ */
index 4065a4d..6ce2ce1 100644 (file)
@@ -50,7 +50,7 @@ struct HvLpEvent {
        u64     xCorrelationToken;      /* Unique value for source/type x10-x17 */
 };
 
-typedef void (*LpEventHandler)(struct HvLpEvent *, struct pt_regs *);
+typedef void (*LpEventHandler)(struct HvLpEvent *);
 
 /* Register a handler for an event type - returns 0 on success */
 extern int HvLpEvent_registerHandler(HvLpEvent_Type eventType,
index 3f68147..4282788 100644 (file)
@@ -72,7 +72,7 @@ struct hvlpevent_queue {
 extern struct hvlpevent_queue hvlpevent_queue;
 
 extern int hvlpevent_is_pending(void);
-extern void process_hvlpevents(struct pt_regs *);
+extern void process_hvlpevents(void);
 extern void setup_hvlpevent_queue(void);
 
 #endif /* _ASM_POWERPC_ISERIES_IT_LP_QUEUE_H */
index c17c137..dac90dc 100644 (file)
@@ -97,7 +97,7 @@ struct machdep_calls {
        void            (*show_percpuinfo)(struct seq_file *m, int i);
 
        void            (*init_IRQ)(void);
-       unsigned int    (*get_irq)(struct pt_regs *);
+       unsigned int    (*get_irq)(void);
 #ifdef CONFIG_KEXEC
        void            (*kexec_cpu_down)(int crash_shutdown, int secondary);
 #endif
index a9f9604..ef0a545 100644 (file)
@@ -409,9 +409,9 @@ extern void mpic_send_ipi(unsigned int ipi_no, unsigned int cpu_mask);
 void smp_mpic_message_pass(int target, int msg);
 
 /* Fetch interrupt from a given mpic */
-extern unsigned int mpic_get_one_irq(struct mpic *mpic, struct pt_regs *regs);
+extern unsigned int mpic_get_one_irq(struct mpic *mpic);
 /* This one gets to the primary mpic */
-extern unsigned int mpic_get_irq(struct pt_regs *regs);
+extern unsigned int mpic_get_irq(void);
 
 /* Set the EPIC clock ratio */
 void mpic_set_clk_ratio(struct mpic *mpic, u32 clock_ratio);
index da77467..293a444 100644 (file)
@@ -43,7 +43,7 @@ struct machdep_calls {
        /* Optional, may be NULL. */
        unsigned int    (*irq_canonicalize)(unsigned int irq);
        void            (*init_IRQ)(void);
-       int             (*get_irq)(struct pt_regs *);
+       int             (*get_irq)(void);
        
        /* A general init function, called by ppc_init in init/main.c.
           May be NULL. DEPRECATED ! */