summaryrefslogtreecommitdiff
path: root/chip/host
diff options
context:
space:
mode:
authorRandall Spangler <rspangler@chromium.org>2013-09-10 10:09:41 -0700
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2013-09-11 19:46:10 +0000
commit6b1dace9f456d5b1b160402866045c3659e665e0 (patch)
tree6e63bbea7bf6ec8a601c839af64a0a40091caf13 /chip/host
parenteff7a1910a60b1d30b10257fd4a12b5ed1402594 (diff)
downloadchrome-ec-6b1dace9f456d5b1b160402866045c3659e665e0.tar.gz
Split uart_process() into input and output processing
This is a precursor to DMA-based UART transfers, which require different processing for DMA vs PIO output types. BUG=chrome-os-partner:20485 BRANCH=pit TEST=Boot pit; verify EC console still works. Change-Id: I6d6f55561eeebe9bd2928b2bfb25278c86f689d1 Signed-off-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/168811 Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Diffstat (limited to 'chip/host')
-rw-r--r--chip/host/uart.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/chip/host/uart.c b/chip/host/uart.c
index b6369df426..770ea8c0ef 100644
--- a/chip/host/uart.c
+++ b/chip/host/uart.c
@@ -69,8 +69,10 @@ static void trigger_interrupt(void)
* TODO: Check global interrupt status when we have
* interrupt support.
*/
- if (!int_disabled)
- uart_process();
+ if (!int_disabled) {
+ uart_process_input();
+ uart_process_output();
+ }
}
int uart_init_done(void)
@@ -185,5 +187,6 @@ void *uart_monitor_stdin(void *d)
void uart_init(void)
{
pthread_create(&input_thread, NULL, uart_monitor_stdin, NULL);
+ stopped = 1; /* Not transmitting yet */
init_done = 1;
}