This makes sl-modem compile without errors (or warnings, except for
deprecation of pci_find_device()) against the current Debian kernel and
with vanilla 2.6.26.  I make no promises as to whether it works; I
didn't feel like messing about with modems and the other bug reports
scared me.

Ben.

diff -u sl-modem-2.9.9d+e-pre2/drivers/amrmo_init.c 
sl-modem-2.9.9d+e-pre2/drivers/amrmo_init.c
--- sl-modem-2.9.9d+e-pre2/drivers/amrmo_init.c
+++ sl-modem-2.9.9d+e-pre2/drivers/amrmo_init.c
@@ -503,7 +503,7 @@
        amrmo_card_interrupt(amrmo->card);
 }
 #else
-static irqreturn_t amrmo_pci_interrupt(int irq, void *dev_id, struct pt_regs 
*regs)
+static irqreturn_t amrmo_pci_interrupt(int irq, void *dev_id)
 {
         struct amrmo_struct *amrmo = (struct amrmo_struct *)dev_id;
        amrmo_card_interrupt(amrmo->card);
@@ -587,7 +587,7 @@
                }
        }
 
-        ret = request_irq(amrmo->irq, &amrmo_pci_interrupt,SA_SHIRQ,
+        ret = request_irq(amrmo->irq, &amrmo_pci_interrupt,IRQF_SHARED,
                          amrmo->name,amrmo);
        if(ret) {
                printk(KERN_ERR "slamr: failed request_irq\n");
diff -u sl-modem-2.9.9d+e-pre2/drivers/st7554.c 
sl-modem-2.9.9d+e-pre2/drivers/st7554.c
--- sl-modem-2.9.9d+e-pre2/drivers/st7554.c
+++ sl-modem-2.9.9d+e-pre2/drivers/st7554.c
@@ -418,7 +418,7 @@
 /* ----------------------------------------------------------------------- */
 
 
-static void st7554_interrupt(struct urb *urb, struct pt_regs* regs)
+static void st7554_interrupt(struct urb *urb)
 {
        struct st7554_state *s = urb->context;
        u32 *status = urb->transfer_buffer;
@@ -459,7 +459,7 @@
 /* --------------------------------------------------------------------- */
 
 
-static void mo_complete(struct urb *u, struct pt_regs* regs)
+static void mo_complete(struct urb *u)
 {
        struct st7554_state *s = u->context;
        struct dmabuf *db = &s->mo.dma;
@@ -518,14 +518,14 @@
 }
 
 
-static void mo_startup_complete(struct urb *u, struct pt_regs* regs)
+static void mo_startup_complete(struct urb *u)
 {
        struct st7554_state *s = u->context;
        USB_DBG("mo_startup_complete %d: %d: sent %d.\n",
                MO_URB_NO(s,u), u->start_frame, u->actual_length);
        FILL_DESC_OUT(s,&s->mo,u,BYTES_IN_FRAMES(s,DESCFRAMES));
        u->complete = mo_complete;
-       mo_complete(u,regs);
+       mo_complete(u);
        complete(&s->start_comp);
 }
 
@@ -533,7 +533,7 @@
 /* ----------------------------------------------------------------------- */
 
 
-static void mi_complete(struct urb *u, struct pt_regs* regs)
+static void mi_complete(struct urb *u)
 {
        struct st7554_state *s = u->context;
        struct urb *next;
@@ -578,7 +578,7 @@
 }
 
 
-static void mi_startup_complete(struct urb *u, struct pt_regs* regs)
+static void mi_startup_complete(struct urb *u)
 {
        struct st7554_state *s = u->context;
        struct usb_iso_packet_descriptor *p;
--- END ---

-- 
Ben Hutchings
If God had intended Man to program,
we'd have been born with serial I/O ports.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to