Re: 2.6.14-rc1-mm1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I still need the following two patches against icom.c (the first
from Alan cox) applied.  With these, 2.6.14-rc1-mm1 compiles and
boots on my power5 machine.

thanks,
-serge

Index: linux-2.6.13-rc7/drivers/serial/icom.c
===================================================================
--- linux-2.6.13-rc7.orig/drivers/serial/icom.c	2005-09-16 15:22:57.000000000 -0500
+++ linux-2.6.13-rc7/drivers/serial/icom.c	2005-09-16 15:27:15.000000000 -0500
@@ -736,6 +736,7 @@ static void recv_interrupt(u16 port_int_
 
 	status = cpu_to_le16(icom_port->statStg->rcv[rcv_buff].flags);
 	while (status & SA_FL_RCV_DONE) {
+		int first = -1;
 
 		trace(icom_port, "FID_STATUS", status);
 		count = cpu_to_le16(icom_port->statStg->rcv[rcv_buff].leLength);
@@ -750,15 +751,17 @@ static void recv_interrupt(u16 port_int_
 			icom_port->recv_buf_pci;
 
 		/* Block copy all but the last byte as this may have status */
-		if(count > 0)
+		if(count > 0) {
+			first = icon->recv_buf[offset];
 			tty_insert_flip_string(tty, icon_port->recv_buf + offset, count - 1);
+		}
 
 		icount = &icom_port->uart_port.icount;
 		icount->rx += count;
 
 		/* Break detect logic */
 		if ((status & SA_FLAGS_FRAME_ERROR)
-		    && (tty->flip.char_buf_ptr[0] == 0x00)) {
+		    && first == 0) {
 			status &= ~SA_FLAGS_FRAME_ERROR;
 			status |= SA_FLAGS_BREAK_DET;
 			trace(icom_port, "BREAK_DET", 0);


Signed-off-by: Serge Hallyn <[email protected]>

Index: linux-2.6.13-rc7/drivers/serial/icom.c
===================================================================
--- linux-2.6.13-rc7.orig/drivers/serial/icom.c	2005-09-16 15:27:15.000000000 -0500
+++ linux-2.6.13-rc7/drivers/serial/icom.c	2005-09-16 15:28:26.000000000 -0500
@@ -752,8 +752,8 @@ static void recv_interrupt(u16 port_int_
 
 		/* Block copy all but the last byte as this may have status */
 		if(count > 0) {
-			first = icon->recv_buf[offset];
-			tty_insert_flip_string(tty, icon_port->recv_buf + offset, count - 1);
+			first = icom_port->recv_buf[offset];
+			tty_insert_flip_string(tty, icom_port->recv_buf + offset, count - 1);
 		}
 
 		icount = &icom_port->uart_port.icount;
@@ -804,7 +804,7 @@ static void recv_interrupt(u16 port_int_
 
 		}
 
-		tty_insert_flip_char(tty, icon_port->recv_buf + offset + count - 1, flag);
+		tty_insert_flip_char(tty, *(icom_port->recv_buf + offset + count - 1), flag);
 
 		if (status & SA_FLAGS_OVERRUN)
 			/*

-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux