Date: Fri, 1 Sep 2000 14:12:48 -0500 From: "Jim King" <jim@jimking.net> To: "Warner Losh" <imp@village.org> Cc: "Gary Kline" <kline@thought.org>, <freebsd-stable@FreeBSD.ORG> Subject: Re: bad 16550A maybe? Message-ID: <004d01c01448$9dfabcf0$a44b8486@jking> References: <002d01c01444$350c8b00$a44b8486@jking> <200009010501.WAA54972@tao.thought.org> <200009011832.MAA37168@harmony.village.org> <200009011853.MAA37372@harmony.village.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Warner Losh wrote: > In message <002d01c01444$350c8b00$a44b8486@jking> "Jim King" writes: > : I think we'd see a lot fewer of these messages on the mailing lists if sio.c > : set the 16550A trigger level to 8 bytes instead of 14 bytes. That's the > : first thing I do when I see this problem, and that usually fixes it; much > : easier than replacing the misbehaving hardware. :-) > > For fast machines, this is a lose since it double the interrupt rate, > but does give a *MUCH* better interrupt latency tolerance. I had to > do this when i had a 16550A attached to a custom card via PCI. I > couldn't make it have fast interrupts, so I did the next best thing by > increasing the number of interrupts and checking more often (the card > itself had about half a dozen interrupts going all the time, so long > as I could afford a 16ms latency I was fine). But it's a pretty small lose in the grand scheme of things, and it would prevent a lot of problems in the field (judging from the amount of times this comes up on -stable and -questions). FreeBSD and 16-bit Windows are the only systems I've used that defaulted to setting the trigger to 14. (They also share the unfortunate characteristic that you have to re-compile something to change the default; Windows was more unfortunate in that you had to own the Windows DDK to do this.) All the DOS-based communications software I used when the 16550A first hit the scene used 8 (usually easily changed in a configuration file), and all the 32-bit versions of Windows default to 8 (easily changed in a fancy GUI configuration dialog). If we're going to hard-code this we should hard-code a middle-of-the-road setting, not something that's wonderful on some boxes but awful on others. Jim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?004d01c01448$9dfabcf0$a44b8486>