54 lines
1.4 KiB
Diff
54 lines
1.4 KiB
Diff
Date: Wed, 26 Oct 2011 13:29:42 +0200
|
|
From: Bart Hartgers <bart.hartgers@gmail.com>
|
|
Subject: [PATCH] ark3116 initialisation fix
|
|
|
|
Hi,
|
|
|
|
This patch for the usb serial ark3116 driver fixes an initialisation
|
|
ordering bug that gets triggered on hotplug when using at least recent
|
|
debian/ubuntu userspace. Without it, ark3116 serial cables don't work.
|
|
|
|
Patch is against 3.1.
|
|
|
|
Groeten,
|
|
Bart
|
|
|
|
Signed-off-by: Bart Hartgers <bart.hartgers@gmail.com>
|
|
Tested-by: law_ence.dev@ntlworld.com
|
|
---
|
|
diff -ur linux-3.1.orig//drivers/usb/serial/ark3116.c linux-3.1/drivers/usb/serial/ark3116.c
|
|
--- linux-3.1.orig//drivers/usb/serial/ark3116.c 2011-10-24 09:10:05.000000000 +0200
|
|
+++ linux-3.1/drivers/usb/serial/ark3116.c 2011-10-26 09:16:41.776874595 +0200
|
|
@@ -42,7 +42,7 @@
|
|
* Version information
|
|
*/
|
|
|
|
-#define DRIVER_VERSION "v0.6"
|
|
+#define DRIVER_VERSION "v0.7"
|
|
#define DRIVER_AUTHOR "Bart Hartgers <bart.hartgers+ark3116@gmail.com>"
|
|
#define DRIVER_DESC "USB ARK3116 serial/IrDA driver"
|
|
#define DRIVER_DEV_DESC "ARK3116 RS232/IrDA"
|
|
@@ -380,10 +380,6 @@
|
|
goto err_out;
|
|
}
|
|
|
|
- /* setup termios */
|
|
- if (tty)
|
|
- ark3116_set_termios(tty, port, NULL);
|
|
-
|
|
/* remove any data still left: also clears error state */
|
|
ark3116_read_reg(serial, UART_RX, buf);
|
|
|
|
@@ -406,6 +402,10 @@
|
|
/* enable DMA */
|
|
ark3116_write_reg(port->serial, UART_FCR, UART_FCR_DMA_SELECT);
|
|
|
|
+ /* setup termios */
|
|
+ if (tty)
|
|
+ ark3116_set_termios(tty, port, NULL);
|
|
+
|
|
err_out:
|
|
kfree(buf);
|
|
return result;
|
|
|