# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#                  ChangeSet    1.579.9.7 -> 1.579.9.8
#       drivers/usb/serial/usbserial.c  1.42    -> 1.43   
#       drivers/usb/serial/usb-serial.h 1.12    -> 1.13   
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/09/23      [EMAIL PROTECTED]  1.579.9.8
# [PATCH] USB:  made port_softint global for other usb-serial drivers to use.
# 
# Based off of a patch from Stuart MacDonald <[EMAIL PROTECTED]>
# --------------------------------------------
#
diff -Nru a/drivers/usb/serial/usb-serial.h b/drivers/usb/serial/usb-serial.h
--- a/drivers/usb/serial/usb-serial.h   Mon Sep 23 15:15:49 2002
+++ b/drivers/usb/serial/usb-serial.h   Mon Sep 23 15:15:49 2002
@@ -232,6 +232,7 @@
 
 extern int  usb_serial_register(struct usb_serial_device_type *new_device);
 extern void usb_serial_deregister(struct usb_serial_device_type *device);
+extern void usb_serial_port_softint(void *private);
 
 extern int usb_serial_probe(struct usb_interface *iface, const struct usb_device_id 
*id);
 extern void usb_serial_disconnect(struct usb_interface *iface);
diff -Nru a/drivers/usb/serial/usbserial.c b/drivers/usb/serial/usbserial.c
--- a/drivers/usb/serial/usbserial.c    Mon Sep 23 15:15:49 2002
+++ b/drivers/usb/serial/usbserial.c    Mon Sep 23 15:15:49 2002
@@ -1090,6 +1090,8 @@
                return;
        }
 
+       usb_serial_port_softint((void *)port);
+
        queue_task(&port->tqueue, &tq_immediate);
        mark_bh(IMMEDIATE_BH);
 
@@ -1108,14 +1110,18 @@
        }
 }
 
-static void port_softint(void *private)
+void usb_serial_port_softint(void *private)
 {
        struct usb_serial_port *port = (struct usb_serial_port *)private;
-       struct usb_serial *serial = get_usb_serial (port, __FUNCTION__);
+       struct usb_serial *serial;
        struct tty_struct *tty;
 
        dbg("%s - port %d", __FUNCTION__, port->number);
        
+       if (!port)
+               return;
+
+       serial = get_usb_serial (port, __FUNCTION__);
        if (!serial)
                return;
 
@@ -1399,7 +1405,7 @@
                port->number = i + serial->minor;
                port->serial = serial;
                port->magic = USB_SERIAL_PORT_MAGIC;
-               port->tqueue.routine = port_softint;
+               port->tqueue.routine = usb_serial_port_softint;
                port->tqueue.data = port;
                init_MUTEX (&port->sem);
        }
@@ -1689,6 +1695,7 @@
 EXPORT_SYMBOL(usb_serial_deregister);
 EXPORT_SYMBOL(usb_serial_probe);
 EXPORT_SYMBOL(usb_serial_disconnect);
+EXPORT_SYMBOL(usb_serial_port_softint);
 #ifdef USES_EZUSB_FUNCTIONS
        EXPORT_SYMBOL(ezusb_writememory);
        EXPORT_SYMBOL(ezusb_set_reset);


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to