]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/isdn/hisax/elsa_ser.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6
[linux-2.6-omap-h63xx.git] / drivers / isdn / hisax / elsa_ser.c
index 0279fb323cb14412404f6ea7d6a59714b461961c..f181db46439281593adc208766e25a1f7a008fa5 100644 (file)
@@ -58,7 +58,7 @@ static inline unsigned int serial_in(struct IsdnCardState *cs, int offset)
 static inline unsigned int serial_inp(struct IsdnCardState *cs, int offset)
 {
 #ifdef SERIAL_DEBUG_REG
-#ifdef CONFIG_SERIAL_NOPAUSE_IO
+#ifdef ELSA_SERIAL_NOPAUSE_IO
        u_int val = inb(cs->hw.elsa.base + 8 + offset);
        debugl1(cs,"inp  %s %02x",ModemIn[offset], val);
 #else
@@ -67,7 +67,7 @@ static inline unsigned int serial_inp(struct IsdnCardState *cs, int offset)
 #endif
        return(val);
 #else
-#ifdef CONFIG_SERIAL_NOPAUSE_IO
+#ifdef ELSA_SERIAL_NOPAUSE_IO
        return inb(cs->hw.elsa.base + 8 + offset);
 #else
        return inb_p(cs->hw.elsa.base + 8 + offset);
@@ -87,13 +87,13 @@ static inline void serial_outp(struct IsdnCardState *cs, int offset,
                               int value)
 {
 #ifdef SERIAL_DEBUG_REG
-#ifdef CONFIG_SERIAL_NOPAUSE_IO
+#ifdef ELSA_SERIAL_NOPAUSE_IO
        debugl1(cs,"outp %s %02x",ModemOut[offset], value);
 #else
        debugl1(cs,"outP %s %02x",ModemOut[offset], value);
 #endif
 #endif
-#ifdef CONFIG_SERIAL_NOPAUSE_IO
+#ifdef ELSA_SERIAL_NOPAUSE_IO
        outb(value, cs->hw.elsa.base + 8 + offset);
 #else
        outb_p(value, cs->hw.elsa.base + 8 + offset);
@@ -254,14 +254,16 @@ write_modem(struct BCState *bcs) {
        count = len;
        if (count > MAX_MODEM_BUF - fp) {
                count = MAX_MODEM_BUF - fp;
-               memcpy(cs->hw.elsa.transbuf + fp, bcs->tx_skb->data, count);
+               skb_copy_from_linear_data(bcs->tx_skb,
+                                         cs->hw.elsa.transbuf + fp, count);
                skb_pull(bcs->tx_skb, count);
                cs->hw.elsa.transcnt += count;
                ret = count;
                count = len - count;
                fp = 0;
        }
-       memcpy((cs->hw.elsa.transbuf + fp), bcs->tx_skb->data, count);
+       skb_copy_from_linear_data(bcs->tx_skb,
+                                 cs->hw.elsa.transbuf + fp, count);
        skb_pull(bcs->tx_skb, count);
        cs->hw.elsa.transcnt += count;
        ret += count;
@@ -382,13 +384,13 @@ static inline void transmit_chars(struct IsdnCardState *cs, int *intr_done)
 }
 
 
-static void rs_interrupt_elsa(int irq, struct IsdnCardState *cs)
+static void rs_interrupt_elsa(struct IsdnCardState *cs)
 {
        int status, iir, msr;
        int pass_counter = 0;
        
 #ifdef SERIAL_DEBUG_INTR
-       printk("rs_interrupt_single(%d)...", irq);
+       printk(KERN_DEBUG "rs_interrupt_single(%d)...", cs->irq);
 #endif
 
        do {