Use macros to define 3410 and 5052 baud bases.
Use macro to define usb download timeout.

Signed-off-by: Mathieu OTHACEHE <m.othac...@gmail.com>
---
 drivers/usb/serial/ti_usb_3410_5052.c | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/drivers/usb/serial/ti_usb_3410_5052.c 
b/drivers/usb/serial/ti_usb_3410_5052.c
index 2b7fe89..b5f3328 100644
--- a/drivers/usb/serial/ti_usb_3410_5052.c
+++ b/drivers/usb/serial/ti_usb_3410_5052.c
@@ -270,10 +270,12 @@ struct ti_firmware_header {
 #define TI_DRIVER_AUTHOR       "Al Borchers <alborch...@steinerpoint.com>"
 #define TI_DRIVER_DESC         "TI USB 3410/5052 Serial Driver"
 
-#define TI_FIRMWARE_BUF_SIZE   16284
+#define TI_3410_BAUD_BASE       923077
+#define TI_5052_BAUD_BASE       461538
 
+#define TI_FIRMWARE_BUF_SIZE   16284
 #define TI_TRANSFER_TIMEOUT    2
-
+#define TI_DOWNLOAD_TIMEOUT    1000
 #define TI_DEFAULT_CLOSING_WAIT        4000            /* in .01 secs */
 
 /* supported setserial flags */
@@ -1016,9 +1018,9 @@ static void ti_set_termios(struct tty_struct *tty,
        if (!baud)
                baud = 9600;
        if (tport->tp_tdev->td_is_3410)
-               wbaudrate = (923077 + baud/2) / baud;
+               wbaudrate = (TI_3410_BAUD_BASE + baud / 2) / baud;
        else
-               wbaudrate = (461538 + baud/2) / baud;
+               wbaudrate = (TI_5052_BAUD_BASE + baud / 2) / baud;
 
        /* FIXME: Should calculate resulting baud here and report it back */
        if ((C_BAUD(tty)) != B0)
@@ -1434,6 +1436,7 @@ static int ti_get_serial_info(struct ti_port *tport,
        struct usb_serial_port *port = tport->tp_port;
        struct serial_struct ret_serial;
        unsigned cwait;
+       int baud_base;
 
        if (!ret_arg)
                return -EFAULT;
@@ -1444,11 +1447,16 @@ static int ti_get_serial_info(struct ti_port *tport,
 
        memset(&ret_serial, 0, sizeof(ret_serial));
 
+       if (tport->tp_tdev->td_is_3410)
+               baud_base = TI_3410_BAUD_BASE;
+       else
+               baud_base = TI_5052_BAUD_BASE;
+
        ret_serial.type = PORT_16550A;
        ret_serial.line = port->minor;
        ret_serial.port = port->port_number;
        ret_serial.xmit_fifo_size = kfifo_size(&port->write_fifo);
-       ret_serial.baud_base = tport->tp_tdev->td_is_3410 ? 921600 : 460800;
+       ret_serial.baud_base = baud_base;
        ret_serial.closing_wait = cwait;
 
        if (copy_to_user(ret_arg, &ret_serial, sizeof(*ret_arg)))
@@ -1643,8 +1651,8 @@ static int ti_do_download(struct usb_device *dev, int 
pipe,
        dev_dbg(&dev->dev, "%s - downloading firmware\n", __func__);
        for (pos = 0; pos < size; pos += done) {
                len = min(size - pos, TI_DOWNLOAD_MAX_PACKET_SIZE);
-               status = usb_bulk_msg(dev, pipe, buffer + pos, len,
-                                                               &done, 1000);
+               status = usb_bulk_msg(dev, pipe, buffer + pos, len, &done,
+                                     TI_DOWNLOAD_TIMEOUT);
                if (status)
                        break;
        }
-- 
2.9.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to