]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/usb/serial/kobil_sct.c
Merge commit 'v2.6.34-rc6' into core/locking
[karo-tx-linux.git] / drivers / usb / serial / kobil_sct.c
index 45ea694b3ae6a4900d0a04810ef9a8b149ad7c32..c113a2a0e10c529e198dcd9e6b7de868e27cddba 100644 (file)
@@ -86,7 +86,7 @@ static void kobil_set_termios(struct tty_struct *tty,
                        struct usb_serial_port *port, struct ktermios *old);
 static void kobil_init_termios(struct tty_struct *tty);
 
-static struct usb_device_id id_table [] = {
+static const struct usb_device_id id_table[] = {
        { USB_DEVICE(KOBIL_VENDOR_ID, KOBIL_ADAPTER_B_PRODUCT_ID) },
        { USB_DEVICE(KOBIL_VENDOR_ID, KOBIL_ADAPTER_K_PRODUCT_ID) },
        { USB_DEVICE(KOBIL_VENDOR_ID, KOBIL_USBTWIN_PRODUCT_ID) },
@@ -388,7 +388,6 @@ static void kobil_read_int_callback(struct urb *urb)
                */
                /* END DEBUG */
 
-               tty_buffer_request_room(tty, urb->actual_length);
                tty_insert_flip_string(tty, data, urb->actual_length);
                tty_flip_buffer_push(tty);
        }
@@ -624,7 +623,6 @@ static void kobil_set_termios(struct tty_struct *tty,
        unsigned short urb_val = 0;
        int c_cflag = tty->termios->c_cflag;
        speed_t speed;
-       void *settings;
 
        priv = usb_get_serial_port_data(port);
        if (priv->device_type == KOBIL_USBTWIN_PRODUCT_ID ||
@@ -647,25 +645,13 @@ static void kobil_set_termios(struct tty_struct *tty,
        }
        urb_val |= (c_cflag & CSTOPB) ? SUSBCR_SPASB_2StopBits :
                                                        SUSBCR_SPASB_1StopBit;
-
-       settings = kzalloc(50, GFP_KERNEL);
-       if (!settings)
-               return;
-
-       sprintf(settings, "%d ", speed);
-
        if (c_cflag & PARENB) {
-               if  (c_cflag & PARODD) {
+               if  (c_cflag & PARODD)
                        urb_val |= SUSBCR_SPASB_OddParity;
-                       strcat(settings, "Odd Parity");
-               } else {
+               else
                        urb_val |= SUSBCR_SPASB_EvenParity;
-                       strcat(settings, "Even Parity");
-               }
-       } else {
+       } else
                urb_val |= SUSBCR_SPASB_NoParity;
-               strcat(settings, "No Parity");
-       }
        tty->termios->c_cflag &= ~CMSPAR;
        tty_encode_baud_rate(tty, speed, speed);
 
@@ -675,11 +661,10 @@ static void kobil_set_termios(struct tty_struct *tty,
                  USB_TYPE_VENDOR | USB_RECIP_ENDPOINT | USB_DIR_OUT,
                  urb_val,
                  0,
-                 settings,
+                 NULL,
                  0,
                  KOBIL_TIMEOUT
                );
-       kfree(settings);
 }
 
 static int kobil_ioctl(struct tty_struct *tty, struct file *file,