Thread (66 messages) 66 messages, 10 authors, 2014-09-04

[PATCH 03/15] tty: serial: 8250_core: add run time pm

From: Frans Klaver <hidden>
Date: 2014-08-20 09:39:43
Also in: linux-omap, linux-serial, lkml

On Wed, Aug 20, 2014 at 11:23:21AM +0200, Frans Klaver wrote:
Hi,

On Fri, Aug 15, 2014 at 07:42:31PM +0200, Sebastian Andrzej Siewior wrote:
quoted
--- a/drivers/tty/serial/8250/8250_core.c
+++ b/drivers/tty/serial/8250/8250_core.c
@@ -1899,12 +1984,22 @@ static void wait_for_xmitr(struct uart_8250_port *up, int bits)
 
 static int serial8250_get_poll_char(struct uart_port *port)
 {
-	unsigned char lsr = serial_port_in(port, UART_LSR);
+	unsigned char lsr;
+	int status;
+
+	serial8250_rpm_get(up);
or up won't be defined below. You probably need 
Obviously I meant to say that 'up' won't be defined here.

+	struct uart_8250_port *up = up_to_u8250p(port);
somewhere in there.
quoted
-	if (!(lsr & UART_LSR_DR))
-		return NO_POLL_CHAR;
+	lsr = serial_port_in(port, UART_LSR);
 
-	return serial_port_in(port, UART_RX);
+	if (!(lsr & UART_LSR_DR)) {
+		status = NO_POLL_CHAR;
+		goto out;
+	}
+
+	status = serial_port_in(port, UART_RX);
+out:
+	serial8250_rpm_put(up);
+	return status;
 }
Cheers,
Frans
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help