]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
serial: sh-sci: Fix setting SCSCR_TIE while transferring data
authorHoan Nguyen An <na-hoan@jinso.co.jp>
Mon, 18 Mar 2019 09:26:32 +0000 (18:26 +0900)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 14 Aug 2019 09:18:49 +0000 (11:18 +0200)
commit5edb2ce0017a73a1ef854ff6973c214a50a23463
tree337090061c1898842d69c5b19e29bfeb45a9c445
parentc07850dca488964264b0a9e040f96ef666d66106
serial: sh-sci: Fix setting SCSCR_TIE while transferring data

BugLink: https://bugs.launchpad.net/bugs/1838116
commit 93bcefd4c6bad4c69dbc4edcd3fbf774b24d930d upstream.

We disable transmission interrupt (clear SCSCR_TIE) after all data has been transmitted
(if uart_circ_empty(xmit)). While transmitting, if the data is still in the tty buffer,
re-enable the SCSCR_TIE bit, which was done at sci_start_tx().
This is unnecessary processing, wasting CPU operation if the data transmission length is large.
And further, transmit end, FIFO empty bits disabling have also been performed in the step above.

Signed-off-by: Hoan Nguyen An <na-hoan@jinso.co.jp>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
drivers/tty/serial/sh-sci.c