login
Header Space

 
 

New version of the serial driver....

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
Date: Thursday, August 20, 1992 - 1:00 am

I've uploaded diffs for some changes that I've made to the serial
driver.

The main feature which has been added is support for the AST FourPort
serial card.  With two of these boards, plus COM1+COM2, it is possible
to have 10 serial lines simultaneously connected to your Linux system.
The only problem with the AST FourPort is that apparently AST no longer
makes it --- I bought my two from a salvage dealer at $25/board.  It
apparently was a very popular board to connect up to SCO systems,
though.  If you have other multiple I/O serial cards which you would
like supported, send me mail with the technical specs to tytso@mit.edu.
I make no guarantees, since I won't have the card to test it out (unless
you want to give me a card, too!), but I'll give my best shot to include
support for them.

In order to support all of these extra ports, I was forced to make some
changes to the way the serial board handled timers.  Using the current
setup, you need two timers for every serial port.  This is not practical
when you want your Linux system to potentially drive up to 12 serial
lines, since there are only 32 timers available on the system.
Therefore, I modified it so that it only requires the use of one timer
facility, and does its own timer demultiplexing.  

Also, the AST FourPort was much more finicky about actually reading from
the appropriate UART modem registers after an interrupt had been
signalled, to acknowledge the interrupt.  If you don't do this, it just
stops generating interrupts.  

I've also fixed some bugs in the setserial and getserial ioctl()'s.

I don't *think* these changes should affect normal people's use of the
serial lines, although my timer changes would have added a little
additional overhead.  If people have time, I'd like you to try it this
driver out, especially if you are using your driver in high-speed
applications (such as KA9Q at 19,200 bps) and let me know how you fared.
Thanks!

                                                        - Ted

P.S.  Supposedly it is possible to run two AST FourPorts on the same
interrupt line, by setting a magic dip switch.  I haven't been able to
get it to work though; if I set the jumers as the manual states, I
simply lose all of the interrupts.  If anyone can figure out what I'm
doing wrong, or has managed to make it work themselves, please give me a
call!
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
New version of the serial driver...., Theodore Ts'o, (Thu Aug 20, 1:00 am)
speck-geostationary