*BSD News Article 18011


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!moe.ksu.ksu.edu!ux1.cso.uiuc.edu!howland.reston.ans.net!paladin.american.edu!news.univie.ac.at!fstgds15.tu-graz.ac.at!fstgds01.tu-graz.ac.at!not-for-mail
From: chmr@edvz.tu-graz.ac.at (Christoph Robitschko)
Newsgroups: comp.os.386bsd.questions
Subject: Re: Putting a com port at IRQ2
Date: 6 Jul 1993 16:24:27 +0200
Organization: Technical University of Graz, Austria
Lines: 39
Message-ID: <21c1urINN3s4@fstgds01.tu-graz.ac.at>
References: <1993Jul6.124149.14006@gmd.de>
NNTP-Posting-Host: fstgds01.tu-graz.ac.at
X-Newsreader: TIN [version 1.1 PL7]

In article <1993Jul6.124149.14006@gmd.de> Holger Veit (veit@mururoa.gmd.de) wrote:
-> In article <raboczi.741938267@s1.elec.uq.oz.au>, raboczi@s1.elec.uq.oz.au (Simon Raboczi) writes:
-> |> I have a four port serial board with 3 16450 UARTs and a single
-> |> 16550.  The IRQ lines for each are selectable in the range 2-5.
-> |> Operating the com ports off of lines 3-5 works fine, but IRQ 2
-> |> has been forcibly moved to IRQ 9, judging from what I see in
-> |> /sys/i386/isa/icu.h .  My kernel has the NFS, ISOFS, ethernet
-> |> and scsi parts excluded, so I don't think there's anything
-> |> else using IRQ 2.
-> |> 
-> |> Q1: Is there a good reason IRQ 2 shouldn't be used?
-> |> 
-> |> Q2: If not, how can I put a com port at IRQ 2?
-> 
-> I guess your serial line board has an 8bit bus. IRQ 2 is unused
-> on XT systems, so the board might offer this as a valid interrupt.
-> On an AT system (including the 386/486-ISA boards) there are two
-> interrupt controllers. The second one is chained to the first via
-> interrupt line 2, so this one is actually used to forward
-> interrupts from the second controller. So IRQ 2 is not a good choice.
-> IRQ 8 which is the first interrupt line on the second controller
-> serves as the "no interrupt" signal for the second controller.
-> So the first available interrupt on the second controller is IRQ 9.
-> 
I don't think this answered the question well.
The pin on the ISA bus that was IRQ2 on XT systems is IRQ9 on AT systems,
and the card does not care, as long as the driver does the right thing.
So, you can set your card to IRQ2, and write in your config file:
	device sio3 at isa? port "IO_COM4" tty irq 9 vector siointr
for patchkit-0.2.4, or
	device com3 at isa? port "IO_COM4" tty irq 2 vector comintr
for earlier patchkits.

You must also make sure that nothing else uses IRQ2/IRQ9. Some EGA/VGA
cards are known to use IRQ2 as the "vertical retrace interrupt" (e.g. Trident),
but on most you can disable this by moving a jumper.


								Christoph