diff options
author | Okash Khawaja <okash.khawaja@gmail.com> | 2017-05-15 18:45:37 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-05-16 14:19:41 +0200 |
commit | 1c5973675cee92d5e8ad3a8a6e53a3e822bae271 (patch) | |
tree | 2ef5bad2d418ac675b709e600b8bf6975e565fda /drivers/staging/speakup/speakup_dectlk.c | |
parent | 470790eefede39ebc22594ce657f14cc83365aed (diff) | |
download | linux-1c5973675cee92d5e8ad3a8a6e53a3e822bae271.tar.gz linux-1c5973675cee92d5e8ad3a8a6e53a3e822bae271.tar.bz2 linux-1c5973675cee92d5e8ad3a8a6e53a3e822bae271.zip |
staging: speakup: flush tty buffers and ensure hardware flow control
This patch fixes the issue where TTY-migrated synths would take a while
to shut up after hitting numpad enter key. When calling synth_flush,
even though XOFF character is sent as high priority, data buffered in
TTY layer is still sent to the synth. This patch flushes that buffered
data when synth_flush is called.
It also tries to ensure that hardware flow control is enabled, by
setting CRTSCTS using tty's termios.
Reported-by: John Covici <covici@ccs.covici.com>
Signed-off-by: Okash Khawaja <okash.khawaja@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/speakup/speakup_dectlk.c')
-rw-r--r-- | drivers/staging/speakup/speakup_dectlk.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/staging/speakup/speakup_dectlk.c b/drivers/staging/speakup/speakup_dectlk.c index ec968dd6b6c8..ccb3bdf58e2a 100644 --- a/drivers/staging/speakup/speakup_dectlk.c +++ b/drivers/staging/speakup/speakup_dectlk.c @@ -293,6 +293,7 @@ static void synth_flush(struct spk_synth *synth) synth->io_ops->synth_out(synth, ']'); in_escape = 0; is_flushing = 1; + synth->io_ops->flush_buffer(); synth->io_ops->synth_out(synth, SYNTH_CLEAR); } |