Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jun 2004 02:33:30 +0400
From:      Roman Kurakin <rik@cronyx.ru>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        freebsd-current@freebsd.org
Subject:   Re: How to catch interrupt
Message-ID:  <40D0CABA.1020101@cronyx.ru>
In-Reply-To: <20040617080547.F8883@gamplex.bde.org>
References:  <40D070B7.5000009@cronyx.ru> <20040617080547.F8883@gamplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans:

>On Wed, 16 Jun 2004, Roman Kurakin wrote:
>  
>
>>    How to catch interrupt for ISA device before registering handler for it?
>>    
>>
>
>This cannot be done without duplicating lots of interrupt handler
>registration code.  (Actually only a little for a quick MD hack: just
>setidt() to point to an interrupt handler, plus enabling the ICU^WPIC,
>plus changing the normal code to not un-enable the PIC.  npx.c still
>does something like this in RELENG_4.)
>
>However, you may only need to test for pending interrupts.  This can
>be done for isa interrupts using isa_irq_pending() to get a bitmap of
>
It seems that this function is not working for interrupts that were 
already used
by some driver before I call it.

rik

>pending irqs.  See sio.c.  On i386's there are also some newer harder
>to use even less portable interfaces for determining pending irqs.
>See i386/include/intr_machdep.h.
>
>Bruce
>
>
>  
>






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40D0CABA.1020101>