]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/usb/serial/iuu_phoenix.c
USB: ftdi_sio: add support for the NDI Polaris system
[linux-2.6-omap-h63xx.git] / drivers / usb / serial / iuu_phoenix.c
index ddff37fa633904b28cb7a8ffe41c2a4804491c5f..2314c6ae4fc26813dcd0b46aee575eba27e3208d 100644 (file)
@@ -190,10 +190,12 @@ static void iuu_rxcmd(struct urb *urb)
 {
        struct usb_serial_port *port = urb->context;
        int result;
+       int status = urb->status;
+
        dbg("%s - enter", __func__);
 
-       if (urb->status) {
-               dbg("%s - urb->status = %d", __func__, urb->status);
+       if (status) {
+               dbg("%s - status = %d", __func__, status);
                /* error stop all */
                return;
        }
@@ -245,10 +247,12 @@ static void iuu_update_status_callback(struct urb *urb)
        struct usb_serial_port *port = urb->context;
        struct iuu_private *priv = usb_get_serial_port_data(port);
        u8 *st;
+       int status = urb->status;
+
        dbg("%s - enter", __func__);
 
-       if (urb->status) {
-               dbg("%s - urb->status = %d", __func__, urb->status);
+       if (status) {
+               dbg("%s - status = %d", __func__, status);
                /* error stop all */
                return;
        }
@@ -274,9 +278,9 @@ static void iuu_status_callback(struct urb *urb)
 {
        struct usb_serial_port *port = urb->context;
        int result;
-       dbg("%s - enter", __func__);
+       int status = urb->status;
 
-       dbg("%s - urb->status = %d", __func__, urb->status);
+       dbg("%s - status = %d", __func__, status);
        usb_fill_bulk_urb(port->read_urb, port->serial->dev,
                          usb_rcvbulkpipe(port->serial->dev,
                                          port->bulk_in_endpointAddress),
@@ -618,24 +622,26 @@ static void read_buf_callback(struct urb *urb)
        struct usb_serial_port *port = urb->context;
        unsigned char *data = urb->transfer_buffer;
        struct tty_struct *tty;
-       dbg("%s - urb->status = %d", __func__, urb->status);
+       int status = urb->status;
 
-       if (urb->status) {
-               dbg("%s - urb->status = %d", __func__, urb->status);
-               if (urb->status == -EPROTO) {
+       dbg("%s - status = %d", __func__, status);
+
+       if (status) {
+               if (status == -EPROTO) {
                        /* reschedule needed */
                }
                return;
        }
 
        dbg("%s - %i chars to write", __func__, urb->actual_length);
-       tty = port->port.tty;
+       tty = tty_port_tty_get(&port->port);
        if (data == NULL)
                dbg("%s - data is NULL !!!", __func__);
        if (tty && urb->actual_length && data) {
                tty_insert_flip_string(tty, data, urb->actual_length);
                tty_flip_buffer_push(tty);
        }
+       tty_kref_put(tty);
        iuu_led_activity_on(urb);
 }
 
@@ -694,7 +700,7 @@ static void iuu_uart_read_callback(struct urb *urb)
        struct usb_serial_port *port = urb->context;
        struct iuu_private *priv = usb_get_serial_port_data(port);
        unsigned long flags;
-       int status;
+       int status = urb->status;
        int error = 0;
        int len = 0;
        unsigned char *data = urb->transfer_buffer;
@@ -702,8 +708,8 @@ static void iuu_uart_read_callback(struct urb *urb)
 
        dbg("%s - enter", __func__);
 
-       if (urb->status) {
-               dbg("%s - urb->status = %d", __func__, urb->status);
+       if (status) {
+               dbg("%s - status = %d", __func__, status);
                /* error stop all */
                return;
        }
@@ -781,12 +787,11 @@ static void read_rxcmd_callback(struct urb *urb)
 {
        struct usb_serial_port *port = urb->context;
        int result;
-       dbg("%s - enter", __func__);
+       int status = urb->status;
 
-       dbg("%s - urb->status = %d", __func__, urb->status);
+       dbg("%s - status = %d", __func__, status);
 
-       if (urb->status) {
-               dbg("%s - urb->status = %d", __func__, urb->status);
+       if (status) {
                /* error stop all */
                return;
        }
@@ -1184,7 +1189,8 @@ static int __init iuu_init(void)
        retval = usb_register(&iuu_driver);
        if (retval)
                goto failed_usb_register;
-       info(DRIVER_DESC " " DRIVER_VERSION);
+       printk(KERN_INFO KBUILD_MODNAME ": " DRIVER_VERSION ":"
+              DRIVER_DESC "\n");
        return 0;
 failed_usb_register:
        usb_serial_deregister(&iuu_device);