Set correct product type from 16654 to 16550A and
fix the ioctl TIOCGSERIAL return struct values.

Signed-off-by: Peter Hung <[email protected]>
---
 drivers/usb/serial/f81232.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/serial/f81232.c b/drivers/usb/serial/f81232.c
index 0ed7e36..4d3aba8 100644
--- a/drivers/usb/serial/f81232.c
+++ b/drivers/usb/serial/f81232.c
@@ -518,13 +518,18 @@ static int f81232_ioctl(struct tty_struct *tty,
 
        switch (cmd) {
        case TIOCGSERIAL:
-               memset(&ser, 0, sizeof ser);
-               ser.type = PORT_16654;
+               memset(&ser, 0, sizeof(ser));
+               ser.flags               = ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ;
+               ser.xmit_fifo_size      = port->bulk_out_size;
+               ser.close_delay         = 5*HZ;
+               ser.closing_wait        = 30*HZ;
+
+               ser.type = PORT_16550A;
                ser.line = port->minor;
                ser.port = port->port_number;
-               ser.baud_base = 460800;
+               ser.baud_base = 115200;
 
-               if (copy_to_user((void __user *)arg, &ser, sizeof ser))
+               if (copy_to_user((void __user *)arg, &ser, sizeof(ser)))
                        return -EFAULT;
 
                return 0;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to