[lkml]   [1998]   [Sep]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: patch: serial 16550C autoflow
On Wed, Sep 23, 1998 at 06:42:58PM -0400, Theodore Y. Ts'o wrote:
> I've found that hardware receive autoflow based on the FIFO flowing
> generally isn't a great idea. First of all, if the system can't handle
> the serial interrupt within 8 character times, there's something pretty
> seriously wrong, and automatic flow control merely hides the problem.
> If you are in this bad situation, yanking the flow control signals up
> and down rapidly as the FIFO fills and empties is also not good for
> performance, because there is often a delay before a device starts
> sending after it stops sending due to a flow control signal.

Possibly. But at the data rates mentioned (400kbaud), 8 character times
is 20us, which is pushing it for Linux on a PC at the moment. And if
there's another interrupt being serviced, goodbye data.

I wonder why they don't just put a bigger FIFO on the serial chip.

Still agree with the rest of your post.

-- Jamie

> Also, many devices aren't can't stop instantly, either. That's why
> Linux as a 1024 byte internal buffer, and will start signalling the flow
> control signal when there 128 bytes left. I want to give plenty of time
> for the flow control signal to happen.
> As you yourself point out in the source code, this can cause some data
> transfer lockups.
> + * *** Currently only implemented for the 16550C. The 16650=
> + * can do autoflow too, but it uses different registers.
> Not true. The National Semiconductor 16550 can not do automatic flow
> control.
> In any case, I'll look at supporting the 16550C, but only if someone can
> identify the manufacturer and I can get a hold of some formal datasheets
> describing it. I've done some web searching, and nothing's shown up as
> far as an manufacturer is concerned.
> - Ted
> Please read the FAQ at
> ------------------------------

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:44    [W:0.041 / U:0.080 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site