Return to BSD News archive
Path: sserve!manuel!munnari.oz.au!uunet!mcsun!Germany.EU.net!unido!adagio!grog From: grog@adagio.UUCP (Greg Lehey) Newsgroups: comp.unix.bsd Subject: Re: 386bsd 0.1 - ne2000 problem work-around Keywords: 386bsd ne2000 Message-ID: <1820@adagio.UUCP> Date: 22 Jul 92 12:55:13 GMT References: <greg.711512526@hibp1.ecse.rpi.edu> <1992Jul20.162728.8188@gateway.novell.com> Organization: LEMIS, Schellnhausen 2, W-6324 Feldatal, Germany Lines: 47 In article <1992Jul20.162728.8188@gateway.novell.com> terry@thisbe.npd.Novell.COM (Terry Lambert) writes: >In article <greg.711512526@hibp1.ecse.rpi.edu>, greg@ecse.rpi.edu (Greg) writes: >|> After I loaded the source, and deleted enough so that I could actually >|> compile something on my 100MB disk, I rebuilt the kernel. I assigned the >|> ne2000 to use irq2, sacrificing com2. The kernal build was uneventfull except >|> that I need to apply the "version patch" posted recently. I restrapped the >|> ne2000 to irq3 and away we go! It seems to work. >|> >|> Perhaps someone has some insight into why in can't use the irq2 >|> configuration. > >Most likely, the "do-it-all" card you mentioned has either an IRQ2 -OR- >one of the higher interrupts. IRQ2 is the "cascade" interrupt for getting >things like IRQ15. Generally, unless the software has a real good idea of >how the interrupt controller works, it's bad form to use IRQ2. There seems to be a lot of confusion about this. The bus IRQ2 line, which has been there since the XT days, no longer generates an IRQ2, since IRQ2 is used for the cascade input of IRQ 8-15. Instead, it is connected to IRQ9. There is *absolutely* no reason not to use this interrupt (unless you count the confusion we're talking about). It's the only one of the 8 higher-level interrupts available to an 8-bit board. >I haven't >had a chance to get into the interrupt controller code yet, but I'll see >what I can do. I suggest that anyone else using IRQ2 be discouraged. The >same can probably be said of "shared interrupt" devices, like Com1 and Com3 >or Com2 and Com4, or a Com2 and a multiport board in the same box, etc. The problem with the lack of IRQ lines is exacerbated by the fact that the standard async board design is brain-damaged: it drives its IRQ line at all times, thus making sharing almost impossible. Some people have come up with ideas for fixing them (like what should have been done: only drive the line when you have something to say). Unfortunately, this also requires the interrupt code to expect multiple interrupts. Currently, it doesn't, and since the hardware prerequisites are absent, I don't see it happening soon. BTW, I use BSD/386, not 386BSD, and there the com ports are numbered starting at 0. IBM starts at 1. I would expect (but haven't checked) that 386BSD would also start at 0. -- Greg Lehey | Tel: +49-6637-1488 LEMIS | Fax: +49-6637-1489 Schellnhausen 2, W-6324 Feldatal, Germany *** NOTE ***: Headers are mangled - reply to grog%lemis@Germany.EU.net