diff options
author | Tapani <tapani@vmail.me> | 2013-01-18 22:24:43 +0100 |
---|---|---|
committer | John Weber <rjohnweber@gmail.com> | 2013-07-28 23:45:23 -0500 |
commit | 194d4c94a821fced74bf563fb817a8eb73a948e1 (patch) | |
tree | 07ca94e8b220b24e94f9f791cdcff49963b17eac | |
parent | c01ebb6ca08326a7d2309efc68329f4147c6d5e5 (diff) |
Revert "ENGR00225875-2 i.MX6Q/Solo Sabreauto Bluetooth H4 fix uart rx timeouts."
This commit breaks Bluetooth UART connection on the WandBoard.
This reverts commit e21b0b06f4b99a22f9cf5d63641c00a6d83d433a.
(cherry picked from commit 7cdaeabf2df37efc5bc7d84319c58af8df6345a6)
-rw-r--r-- | drivers/tty/serial/imx.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index a512a7669d53..e610ec030ca1 100644 --- a/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c @@ -818,11 +818,8 @@ static void imx_finish_dma(struct imx_port *sport) * [2] the Aging timer expires(wait for 8 bytes long) * [3] the Idle Condition Detect(enabled the UCR4_IDDMAEN). * - * [2] is trigger when a character was been sitting in the FIFO - * meanwhile [3] can wait for 32 bytes long when the RX line is - * on IDLE state and RxFIFO is empty. - * Bluetooth H4 is very susceptible to Rx timeouts if data is not available - * in a specific period of time so we use both. + * The [2] and [3] are similar, but [3] is better. + * [3] can wait for 32 bytes long, so we do not use [2]. */ static void dma_rx_callback(void *data) { @@ -1063,8 +1060,8 @@ static int imx_startup(struct uart_port *port) temp |= UCR1_RRDYEN | UCR1_RTSDEN | UCR1_UARTEN; if (sport->enable_dma) { temp |= UCR1_RDMAEN | UCR1_TDMAEN; - /* ICD,await 4 idle frames also enable AGING Timer */ - temp |= UCR1_ICD_REG(0)|UCR1_ATDMAEN; + /* ICD, wait for more than 32 frames, but it still to short. */ + temp |= UCR1_ICD_REG(3); } if (USE_IRDA(sport)) { |