[PATCH] H8/300 update (5/9) SCI driver fix

From: Yoshinori Sato
Date: Tue May 11 2004 - 11:53:37 EST


- fix h8300 depend setup sequence

--
Yoshinori Sato
<ysato@xxxxxxxxxxxxxxxxxxxx>

diff -Nru linux-2.6.6/drivers/serial/sh-sci.c linux-2.6.6-h8300/drivers/serial/sh-sci.c
--- linux-2.6.6/drivers/serial/sh-sci.c 2004-05-11 14:30:46.000000000 +0900
+++ linux-2.6.6-h8300/drivers/serial/sh-sci.c 2004-05-11 19:21:26.000000000 +0900
@@ -904,14 +904,14 @@
{
struct sci_port *s = &sci_ports[port->line];

- sci_request_irq(s);
- sci_start_tx(port, 1);
- sci_start_rx(port, 1);
-
#if defined(__H8300S__)
h8300_sci_enable(port, sci_enable);
#endif

+ sci_request_irq(s);
+ sci_start_tx(port, 1);
+ sci_start_rx(port, 1);
+
return 0;
}

@@ -1328,6 +1328,7 @@
int bits = 8;
int parity = 'n';
int flow = 'n';
+ int ret;

if (co->index >= SCI_NPORTS)
co->index = 0;
@@ -1345,10 +1346,19 @@
#else
port->uartclk = CONFIG_CPU_CLOCK;
#endif
+#if defined(__H8300S__)
+ h8300_sci_enable(port, sci_enable);
+#endif
if (options)
uart_parse_options(options, &baud, &parity, &bits, &flow);

- return uart_set_options(port, co, baud, parity, bits, flow);
+ ret = uart_set_options(port, co, baud, parity, bits, flow);
+#if defined(__H8300H__) || defined(__H8300S__)
+ /* disable rx interrupt */
+ if (ret == 0)
+ sci_stop_rx(port);
+#endif
+ return ret;
}

static struct console serial_console = {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/