From owner-freebsd-hackers Wed Jul 1 20:10:36 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id UAA17948 for freebsd-hackers-outgoing; Wed, 1 Jul 1998 20:10:36 -0700 (PDT) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from implode.root.com (implode.root.com [198.145.90.17]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id UAA17943 for ; Wed, 1 Jul 1998 20:10:34 -0700 (PDT) (envelope-from root@implode.root.com) Received: from implode.root.com (localhost [127.0.0.1]) by implode.root.com (8.8.5/8.8.5) with ESMTP id UAA19925; Wed, 1 Jul 1998 20:09:41 -0700 (PDT) Message-Id: <199807020309.UAA19925@implode.root.com> To: "Larry S. Lile" cc: Mike Smith , hackers@FreeBSD.ORG Subject: Re: Problems with irq 9(2)? In-reply-to: Your message of "Wed, 01 Jul 1998 15:58:26 EDT." From: David Greenman Reply-To: dg@root.com Date: Wed, 01 Jul 1998 20:09:41 -0700 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG >> The short answer is that you can't "block" ISA interupts, so the >> problem you're seeing has to be related to how you're talking to the >> card. The only confirmation of interrupt delivery that the card will >> ever get has to come from your code. > >I thought that was the entire purpose behind splxxx(), It held off >the 8259's until the kernel could process the next interrupt. *confused* Sort of. It has little to do with the 8259, however. The purpose of spl* is to prevent reentrancy into interrupt handlers and to protect critical sections in other parts of the kernel. >Anyway, the card has a register (isrp) that has a bit that shows whether >or not the card can interrrupt the 8259 on its irq line. This works for >the first interrupt but as soon as I enter an spl loop that bit goes >high, saying he can't interrupt, and never drops even after exiting the >spl loop. Sounds to me like you aren't acking the interrupt in your ISR. >Maybe I am confused about how 8259's work, it has been a long time >since I played with that level of the machine, and then it was only for >college class under dos. You don't need to know how the 8259 works to write a device driver. -DG David Greenman Co-founder/Principal Architect, The FreeBSD Project To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message