Return to BSD News archive
Newsgroups: comp.os.386bsd.questions Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!noc.near.net!uunet!gatekeeper.us.oracle.com!decwrl!csus.edu!netcom.com!duncan From: duncan@netcom.com (Donald K. Duncan) Subject: Re: patch support for Chris' com drivers ? Message-ID: <duncanC5FMJ4.HD@netcom.com> Summary: surgery, epoxy and solder Organization: NETCOM On-line Communication Services (408 241-9760 guest) References: <C5D4sw.B3B@constellation.ecn.uoknor.edu> <1qdio2$mjf@walt.ee.pdx.edu> Date: Tue, 13 Apr 1993 17:13:51 GMT Lines: 35 In article <1qdio2$mjf@walt.ee.pdx.edu>, rgrimes@acacia (Rodney W. Grimes) writes: >... > The reason I chose IRQ2 and IRQ5 is that is what most COM boards allow as > alternates, not so much as what is not used. The bad thing is that shared > interrupts require special hardware design to be done correctly, and I know > of no boards that are designed correctly. This is an electronic level issue, > that has to do with the type of driver used to drive the IRQ signal. > >... It is true that one should drive the IRQ signal correctly. A very simple and inexpensive way of modifying virtually ANY serial card to work with a shared interrupt driver such as CGD's is as follows: Epoxy a piece of perfboard to the edge of the serial card (remove it from the system first :). On the perfboard place a tristate buffer IC such as a 74ls126 quad tristate buffer and wire ALL the outputs of the '126 to the desired ISA interrupt line such as IRQ5 (on the card - not the motherboard!!). Pull the IRQ line low to ground with a 220 ohm resistor. There should only be one resistor per interrupt line. Next, cut the trace coming from the INT pin from each of the serial chips and wire the INT pin to an input and its associated enable pin on the '126. The 74ls126 will handle upto 4 serial chips as it is a quad buffer. This arrangement is basically a wired-or of the serial IC INT pins. Note the need for a TRISTATE buffer as a normal buffer would cause contention. Note further that each buffer must have its own enable. Otherwise additional logic will be required. I'm currently using such an arrangement to support 8 serial ports on two interrupt lines. It is an easy modification but just be careful. I assume no responsibility for fried systems. -- duncan@zycad.com (Donald Duncan - WB6QMS)