c2ca8e5398
TX FSM reset command generates TX_RESET_DONE & TX_DMA_DONE interrupt bits. Upon receiving TX_DMA_DONE we initiate new TX transfer for the pending bytes present in tty uart circular buffer. That leaves TX sequencer active after reset sequence. That can result into all kinds of SMMU crash where client initiates new TX DMA transfer without knowing that we have already a transfer queued. This is unexpected behaviour because we expect TX sequencer and DMA engine to go IDLE after reset. To fix above scenario, don't handle TX_DMA_DONE upon reciving TX_RESET_DONE. Also, add IPC logs to get_mctrl function to get the IOS status. Change-Id: Ib76750b5e2c6ec5bf993c341c258791e471672d2 Signed-off-by: Akash Asthana <akashast@codeaurora.org> |
||
---|---|---|
.. | ||
hvc | ||
ipwireless | ||
serdev | ||
serial | ||
vt | ||
amiserial.c | ||
cyclades.c | ||
ehv_bytechan.c | ||
goldfish.c | ||
isicom.c | ||
Kconfig | ||
Makefile | ||
mips_ejtag_fdc.c | ||
moxa.c | ||
moxa.h | ||
mxser.c | ||
mxser.h | ||
n_gsm.c | ||
n_hdlc.c | ||
n_null.c | ||
n_r3964.c | ||
n_tracerouter.c | ||
n_tracesink.c | ||
n_tracesink.h | ||
n_tty.c | ||
nozomi.c | ||
pty.c | ||
rocket_int.h | ||
rocket.c | ||
rocket.h | ||
synclink_gt.c | ||
synclink.c | ||
synclinkmp.c | ||
sysrq.c | ||
tty_audit.c | ||
tty_baudrate.c | ||
tty_buffer.c | ||
tty_io.c | ||
tty_ioctl.c | ||
tty_jobctrl.c | ||
tty_ldisc.c | ||
tty_ldsem.c | ||
tty_mutex.c | ||
tty_port.c | ||
ttynull.c | ||
vcc.c |