Handle below error cases with UART Tx transfer: 1. Application doing I/O to UART port and is being terminated abnormally. 2. Used ADM Channel for UART TX transfer stalls. In both above conditions, queued Tx command to ADM is not flushed. Hence restarting of application shows list corruption for queueing next UART Tx command to ADM. This change fixes it by having state machine for UART Tx, identifying such condition and flushing the queue Tx command before closing the UART device. Change-Id: I4e567a539d890dffed50b5837dde58d5cd62d641 Signed-off-by: Mayank Rana <mrana@codeaurora.org>