changeset 1531:3b7e8d600c19

Workaround for sh4 bug.
author Rob Landley <rob@landley.net>
date Fri, 27 Jul 2012 08:56:55 -0500
parents 2b3c892dc25e
children a2e491cd0800
files sources/patches/linux-fixsh4-2.patch
diffstat 1 files changed, 18 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sources/patches/linux-fixsh4-2.patch	Fri Jul 27 08:56:55 2012 -0500
@@ -0,0 +1,18 @@
+This is "the wrong fix".  The correct fix is to qemu (take out the "#ifdef 0"
+around the 0x18 case in hw/sh_serial.c line 250 or so, or just don't
+abort() on unknown register reads), and I pinged the qemu
+mailing list about that, but this works with existing qemu releases.
+
+diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c
+index 1bd9163..fa043f1 100644
+--- a/drivers/tty/serial/sh-sci.c
++++ b/drivers/tty/serial/sh-sci.c
+@@ -1879,7 +1879,7 @@ static void sci_set_termios(struct uart_port *port, struct ktermios *termios,
+ 
+ 	sci_init_pins(port, termios->c_cflag);
+ 
+-	reg = sci_getreg(port, SCFCR);
++	reg = sci_getreg(port, 0x30);
+ 	if (reg->size) {
+ 		unsigned short ctrl = serial_port_in(port, SCFCR);
+