Date: Tue, 15 Jul 1997 23:51:00 -0600 From: Steve Passe <smp@csn.net> To: smp@freebsd.org Subject: HEADS UP: EISA cards. Message-ID: <199707160551.XAA06975@Ilsa.StevesCafe.com>
next in thread | raw e-mail | index | archive | help
Hi, DESIGN DECISION: I am about to make a design decision that will forever-more make the use of EISA cards that use the EISA chipset DMA circuit impossible in the SMP kernel. I posted a rather long email about this several days ago but got ZERO response. So I can conclude that either: a: everyone agrees with this decision. OR b: no one with such hardware read that far. In the future I will use this "HEADS UP" format to get a summary of such info to the top of email. For the record, here is a repost of the pertinant info: ----------------------------------- cut ----------------------------------- Till now we have been using "mixed mode programming" where the 8259 PIC's INT output is routed thru the APIC and handled as an 'ExtInt' on those machines that don't route the 8254 to the APIC. ... It turns out that when you do this the 8254 timer INTs (or any INT from the 8259) are NOT reflected in the APIC IRR/ISR registers, and CANNOT be masked via the APIC TPR register/process priority scheme. This is unacceptable ... Intel has a solution in: Intel486(TM) MicroProcessors and related Products, order #241731-002 pp 4-220 thru 4-302: 82489DX Advanced Programmable Interrupt Controller ... - program the 8259 to pass ONLY the DMA chaining INT - program the IO APIC to handle this as a regular (ie not 'ExtInt') input - abandon the 8254 timer, instead using the APIC's internal timer. ... I believe that we don't want to abandon the 8254, but instead should abandon the DMA chaining INTs (who uses these anyways???) Then we can program in a similar way, but instead pass the 8254 INT thru as a regular INT. ... we need to make a policy decision as to whether we can say bye-bye to the DMA chaining INTs. If I don't get thoughtful feedback on this I will just nmake an arbitrary decision (which I suspect to be axing the DMA INTs). I think the only situation needing them is non-busmaster EISA hardware that does DMA via the motherboard chipset DMA registers. Please correct me if I am wrong on this point. -- Steve Passe | powered by smp@csn.net | Symmetric MultiProcessor FreeBSD
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707160551.XAA06975>