home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.os.linux
- Subject: Re: 57.6Kbps under Linux -- some results...
- Path: sparky!uunet!snorkelwacker.mit.edu!think.com!unixland!rmkhome!rmk
- From: rmk@rmkhome.UUCP (Rick Kelly)
- Organization: The Man With Ten Cats
- Date: Sun, 13 Sep 1992 05:38:57 GMT
- Reply-To: rmk@rmkhome.UUCP (Rick Kelly)
- Message-ID: <9209130039.09@rmkhome.UUCP>
- References: <!nwn!6h.harp@netcom.com> <TYTSO.92Sep12125450@tsx-11.mit.edu>
- Lines: 61
-
- In article <TYTSO.92Sep12125450@tsx-11.mit.edu> tytso@athena.mit.edu (Theodore Y. Ts'o) writes:
- >In article <!nwn!6h.harp@netcom.com> harp@netcom.com (Gregory O. Harp) writes:
- >
- > First, I had to hack the kernel serial code to handle that speed.
- > Linux currently only supports 38.4Kbps as "shipped."
- >
- >I've been working on a heavily revised version of the serial driver,
- >that supports more boards (including the AST FourPort boards) as well
- >some other neat features. One of the neat features is a way
- >to control what speed "38400" baud means when you specify it
- >to the kernel, using setserial. You can set it to mean 38400, 57600,
- >115200, or "custom divsor". With custom divisor, you basically get to
- >specify "div" in the equation
- >
- > baud = 1843200 / (div * 16)
- >
- >I'll be shipping my new serial driver to Linus soon, so look for it in a
- >Linux release near you. Some of the other fixes which should be popular
- >is that I've managed to use over 100k less memory in the tty drivers,
- >which means 100k more memory for user programs. I figure that should be
- >nice for people who have 2 or 4 meg machines. :-)
- >
- > BTW, the reason I keep saying 16550A and not just 16550 is because a
- > glance at the code tells me that Linux is only enabling the FIFO if
- > the UART is the 16550A (refer to lines 265-272 of serial.c). Linus,
- > can you tell us why you don't use the FIFO on the 16550? I've
- > personally never used the FIFO because my projects were for 16450
- > UARTs, but I'm not aware of any problems.
- >
- >The initial version of the 16550 which were shipped by National
- >Semiconductor had a bug, so that their FIFO's where *not* reliable. The
- >spec sheets from National specific state that if you have a 16550, you
- >should not attempt to use the FIFO's. Fortunately, relatively few
- >16550's were actually shipped before the problem was discovered, and
- >most of those ended up in PS/2's. These days, when people talk about
- >16550's, they generally mean recent versions of the chips that have the
- >working FIFO's. These chips will be labelled: "NS16550A", "NS16550AF",
- >"PC16550C", or "PC16550CF", (apparently PC16550CF is the most recent
- >chip version; although I've been assured by National Semiconductor that
- >most of the bugs which were fixed in the PC16550CF's shouldn't give me
- >any trouble if I only have a NS16550A).
- >
- >In any case, because the original 16550's had such a serious bug,
- >National thoughtfully gave us a software way of detecting whether or not
- >the chip was one of the chips with the FIFO bug, or not. All of the
- >more recent chips will ID themselves as a 16550A; it is only the
- >original buggy chips that will ID themselves as a 16550.
- >
- >You generally don't need to worry about this. Although it might be
- >prudent to check a serial board that you're thinking about to see
- >whether it has one of the newer chips, it is very unlikely that if you
- >were buying a serial board that you would actually run into one that had
- >one of the original 16550 chips.
-
-
- The PC16550CF has been alleged to be faster than the NS16550A. As far as
- I know, it is a drop in work-alike.
-
- --
-
- Rick Kelly rmk@rmkhome.UUCP unixland!rmkhome!rmk rmk@frog.UUCP
-