Hi Greg, > From: Greg KH, Sent: Wednesday, June 2, 2021 8:57 PM > > On Wed, Jun 02, 2021 at 08:41:08PM +0900, Yoshihiro Shimoda wrote: > > Stop dmaengine transfer in sci_stop_tx(). Otherwise, the following > > message is possible output when system enters suspend and while > > transferring data, because clearing TIE bit in SCSCR is not able to > > stop any dmaengine transfer. > > > > sh-sci e6550000.serial: ttySC1: Unable to drain transmitter > > > > Notes that this patch uses dmaengine_terminate_async() so that > > we can apply this patch into longterm kernel v4.9.x or later. > > > > Fixes: 73a19e4c0301 ("serial: sh-sci: Add DMA support.") > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> > > --- > > drivers/tty/serial/sh-sci.c | 10 ++++++++++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c > > index 4baf1316ea72..e7130be48946 100644 > > --- a/drivers/tty/serial/sh-sci.c > > +++ b/drivers/tty/serial/sh-sci.c > > @@ -600,6 +600,9 @@ static void sci_start_tx(struct uart_port *port) > > static void sci_stop_tx(struct uart_port *port) > > { > > unsigned short ctrl; > > +#ifdef CONFIG_SERIAL_SH_SCI_DMA > > + struct sci_port *s = to_sci_port(port); > > +#endif > > Please do not put #ifdef in .c files, this should be possible without > that. This #ifdef could avoid a compile warning if CONFIG_SERIAL_SH_SCI_DMA was not defined: drivers/tty/serial/sh-sci.c: In function 'sci_stop_tx': drivers/tty/serial/sh-sci.c:603:19: warning: unused variable 's' [-Wunused-variable] struct sci_port *s = to_sci_port(port); Anyway, I'll avoid to use #ifdef in .c file. Thank you for your review! Best regards, Yoshihiro Shimoda > thanks, > > greg k-h