*BSD News Article 6867


Return to BSD News archive

Newsgroups: comp.unix.bsd
Path: sserve!manuel.anu.edu.au!munnari.oz.au!bruce.cs.monash.edu.au!andrewh
From: andrewh@cs.monash.edu.au (Andrew Herbert)
Subject: Re: STB 4-COM serial card, com driver
Message-ID: <andrewh.719763062@bruce.cs.monash.edu.au>
Keywords: IRQ, port, multiport, com, driver
Sender: news@bruce.cs.monash.edu.au (USENET News System)
Organization: Computer Science, Monash University, Australia
References: <1992Oct21.124822.8843@netcom.com>
Date: Thu, 22 Oct 1992 14:11:02 GMT
Lines: 28

abe@netcom.com (David Abercrombie) writes:

>I am trying to get an STB 4-COM serial board to work reliably
>under 386BSD.  This board has four ports, each can be assigned 
>one of eight possible IRQ lines (2, 3, 4, 5, 10, 11, 12, or 15)

....

>to get the "OK" result.  Sometimes, I get no characters echoed
>to my screen after the initial "a", but sometimes I get the "at"
>echoed followed by a "K" but missing the "O".  In both cases, the
>keyboard is not responsive, not even to Ctrl-Alt-Del.  Occaisionaly,
>I can type a few "at" commands before the keyboard freezes.

>What has me puzzled is that I can boot into OS/2, use the ports
>for a while, and do a warm boot into BSD.  I can then usually
>use the ports without any problems!  It seems almost as if
>a UART register is not getting "set" or "cleared" properly by BSD, 

The problem may be associated with the handling of OUT2 lines on the
UARTs.  According to FAS (an excellent SYSV serial driver), only the last
UART's OUT2 line should be raised - the other three sharing the interrupt
should not assert OUT2.

Modifying the driver to do this without horrible kludges requires a certain
amount of thought, but a quick hack to do this is certainly possible.

Andrew