On Wed, 2015-07-22 at 23:47 +0800, qipeng.zha wrote: > From: "qipeng.zha" <qipeng.zha@xxxxxxxxx> > > According to DesignWare 8250 spec, if auto flow control mode is > enabled, a change in CTS does not cause an interrupt, so sw-assisted > CTS flow control mode will not work properly. > > There reported an GPS firmware download failure issue, and we verified > the root cause is, the default sw-assisted CTS flow control mode can > not work properly since no interrupt when got CTS signal. > > This patch is to enable auto CTS mode by defaut if CRTSCTS is enable > for DesignWare 8250 controller. >Have you checked this for ACPI enumerated UART? In that case 8250_dw.c is used and it doesn't have this as well. Yes, confirmed same issue with 8250_dw.c and update in following patch. >I also would like to hear Heikki about this. > > Signed-off-by: Huiquan Zhong <huiquan.zhong@xxxxxxxxx> > Signed-off-by: qipeng.zha <qipeng.zha@xxxxxxxxx> > --- > drivers/tty/serial/8250/8250_pci.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/tty/serial/8250/8250_pci.c > b/drivers/tty/serial/8250/8250_pci.c > index 892eb32..5aeabe4 100644 > --- a/drivers/tty/serial/8250/8250_pci.c > +++ b/drivers/tty/serial/8250/8250_pci.c > @@ -1438,6 +1438,10 @@ byt_set_termios(struct uart_port *p, struct > ktermios *termios, > reg |= BYT_PRV_CLK_EN | BYT_PRV_CLK_UPDATE; > writel(reg, p->membase + BYT_PRV_CLK); > > + p->status &= ~UPSTAT_AUTOCTS; > + if (termios->c_cflag & CRTSCTS) > + p->status |= UPSTAT_AUTOCTS; > + > serial8250_do_set_termios(p, termios, old); } > -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxx> Intel Finland Oy ��.n��������+%������w��{.n�����{��ǫ����{ay�ʇڙ���f���h������_�(�階�ݢj"��������G����?���&��