[oe-commits] : linux-davinci : Add patch to solve strange serial console behavior.

OE GIT Trial gittrial at amethyst.openembedded.net
Tue Aug 12 14:26:28 UTC 2008


Module: OE.dev
Branch: org.openembedded.dev
Commit: 8121a3274b1316e69a8c876c7de90221869c378e
URL:    http://gitweb.openembedded.net//OE.dev.git/?a=commit;h=8121a3274b1316e69a8c876c7de90221869c378e

Author:  <crofton at openembedded.org>
Date:   Fri Aug  8 22:01:19 2008 +0000

linux-davinci : Add patch to solve strange serial console behavior.

---

 packages/linux/linux-davinci/8250_davinci.patch   |   28 +++++++++++++++++++++
 packages/linux/linux-davinci_2.6.x+git-davinci.bb |    1 +
 2 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/packages/linux/linux-davinci/8250_davinci.patch b/packages/linux/linux-davinci/8250_davinci.patch
new file mode 100644
index 0000000..3625ded
--- /dev/null
+++ b/packages/linux/linux-davinci/8250_davinci.patch
@@ -0,0 +1,28 @@
+--- linux-2.6/drivers/serial/8250.c	2008-08-06 15:56:53.000000000 -0500
++++ linux-2.6-vanilla/drivers/serial/8250.c	2008-08-07 12:24:29.000000000 -0500
+@@ -1867,7 +1867,6 @@
+ 	}
+ 
+ 	if (is_real_interrupt(up->port.irq)) {
+-		unsigned char iir1;
+ 		/*
+ 		 * Test for UARTs that do not reassert THRE when the
+ 		 * transmitter is idle and the interrupt has already
+@@ -1881,7 +1880,7 @@
+ 		wait_for_xmitr(up, UART_LSR_THRE);
+ 		serial_out_sync(up, UART_IER, UART_IER_THRI);
+ 		udelay(1); /* allow THRE to set */
+-		iir1 = serial_in(up, UART_IIR);
++		serial_in(up, UART_IIR);
+ 		serial_out(up, UART_IER, 0);
+ 		serial_out_sync(up, UART_IER, UART_IER_THRI);
+ 		udelay(1); /* allow a working UART time to re-assert THRE */
+@@ -1894,7 +1893,7 @@
+ 		 * If the interrupt is not reasserted, setup a timer to
+ 		 * kick the UART on a regular basis.
+ 		 */
+-		if (!(iir1 & UART_IIR_NO_INT) && (iir & UART_IIR_NO_INT)) {
++		if (iir & UART_IIR_NO_INT) {
+ 			pr_debug("ttyS%d - using backup timer\n", port->line);
+ 			up->timer.function = serial8250_backup_timeout;
+ 			up->timer.data = (unsigned long)up;
diff --git a/packages/linux/linux-davinci_2.6.x+git-davinci.bb b/packages/linux/linux-davinci_2.6.x+git-davinci.bb
index 5b5a55a..6560fc9 100644
--- a/packages/linux/linux-davinci_2.6.x+git-davinci.bb
+++ b/packages/linux/linux-davinci_2.6.x+git-davinci.bb
@@ -13,6 +13,7 @@ PR = "r2"
 COMPATIBLE_MACHINE = "(davinci-dvevm|davinci-sffsdr)"
 
 SRC_URI = "git://source.mvista.com/git/linux-davinci-2.6.git;protocol=git \
+           file://8250_davinci.patch;patch=1 \
            file://defconfig"
 
 SRC_URI_append_davinci-sffsdr = " file://sffsdr.patch;patch=1"





More information about the Openembedded-commits mailing list