Re: artpec.c / serial_core.c hardware flow control problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 28 Jun 2012 17:29:27 +0200
Mikael Johansson <mikael.lars.johansson@xxxxxxxx> wrote:

> Greetings,
> 
> We have a problem with drivers/serial/artpec.c (Not yet in main tree) 
> which uses hardware supported flow control (XON/XOFF). We do cfmakeraw() 
> and tcsetattr() from userspace to set a termios struct where (c_iflag & 
> IXON) is not set. The problem is that the call to tcsetattr() is not 
> propagated down to serial_artpec_set_termios(), the reason being that 
> uart_set_termios() doesn't think that IXON is a RELEVANT_IFLAG and 
> returns prematurely instead of calling uart_change_speed --> 
> ops->set_termios().
> 
> Could this be fixed by making IXON a RELEVANT_IFLAG?:

That's actually insufficient for those cases - you can set the characters
used for things as well plus IXANY and IXOFF.

It's a stupid "optimisation" and the only reason I didn't get rid of it
before was in case it broke something else. Time for it to go.

So yeah - I'd just delete it.

If you are doing hardware XON/XOFF watch c_cc[VSTART] and c_cc[VSTOP].
Those control the symbol used for soft flow control.

Alan


--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux