Date: Fri, 1 Sep 2000 17:26:15 -0700 (PDT) From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net> To: chad@DCFinc.com Cc: all@biosys.net (Allen Landsidel), freebsd-stable@FreeBSD.ORG Subject: Re: bad 16550A maybe? Message-ID: <200009020026.RAA62955@gndrsh.dnsmgr.net> In-Reply-To: <200009012328.QAA02858@freeway.dcfinc.com> from "Chad R. Larson" at "Sep 1, 2000 04:28:24 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
> As I recall, Allen Landsidel wrote: > > (Unbuffered is sort of a misnomer on the 8250/16450. They both had a > > 2byte buffer, but for programming purposes, they are unbuffered.) > > Well, more like one-and-a-half. One byte storage, and then the shift > register. It is a one character buffer. Period. Not 2 characters, not 1.5, but 1 character. If you don't get your data out in 1 character time, you loose data and have a silo overflow. You can not count the deserializer as a buffer as it in no way effects how long you have to get the data out before you loose data due to an overrun. I can say that the problem of sio overruns has gotten worse in BSD over time, or that is it after the great improvements made by Bruce Evans and the fast interrupt code other parts of the system have degraded in ways that have made very high speed serial work marginal unless you drop your FIFO to 8 byte thresholds. (I've had 262Kbaud serial stuff running on FreeBSD stuff since the 386BSD days, and until I upgraded to 3.4 I never had to fuss with the FIFO threshold. At 3.4 I had to lower it to 8 bytes. This is _NOT_ slow hardware, this is on a Pentium 100 doing nothing more than routing packets to/from 4 high speed serial ports, ethernet and 2mb wireless, oh, and before you ask, yes the hardware is properly configured, no shared interrupts, etc. -- Rod Grimes - KD7CAX @ CN85sl - (RWG25) rgrimes@gndrsh.dnsmgr.net 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?200009020026.RAA62955>