Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 May 1997 20:07:40 +0200
From:      Stefan Esser <se@FreeBSD.ORG>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        current@FreeBSD.ORG, gurney_j@resnet.uoregon.edu
Subject:   Re: cvs commit: src/sys/sys interrupt.h src/sys/kern kern_intr.c
Message-ID:  <19970527200740.32152@x14.mi.uni-koeln.de>
In-Reply-To: <199705271332.XAA10911@godzilla.zeta.org.au>; from Bruce Evans on Tue, May 27, 1997 at 11:32:26PM %2B1000
References:  <199705271332.XAA10911@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On May 27, Bruce Evans <bde@zeta.org.au> wrote:
> >> >[Edge sensitive share interrupts]
> 
> >> No, the loop is best done in individual drivers.  The low level
> 
> >But it doesn't suffice, that each driver loops as long 
> >as is responsible for the activation of the interrupt line.
> 
> I assumed only one driver per interrupt line.

Well, that's easy ...
But the original question was, whether the new shared interrupt 
support might be applicable to ISA drivers, and the consent seems
to be, that it isn't for the reason you give below:

> You can read the state of the IRQ pin from the request latch
> if the edge latch is not set.  Otherwise the request latch
> is 0.  There is no way to read or write the edge latch
> (other than reinitializing the 8259).  Thus the request latch
> is perfectly unusable for recovering from edge triggering
> braindamage.  It can only be used to determine the IRQ state
> of masked interrupts.

I guess we just should say NO, then. The sio driver may implement
its own interrupt mux code, and the other ISA drivers will continue
to work with non-shared interrupts, only.

> This can be now done without changing all drivers by returning
> the status in the interrupt descriptor instead of directly.

Hmmm, I wonder whether this would be useful to have ...
If its only for the SIO driver, I'd avoid the added complexity
of having this in the generic interrupt code ...

Regards, STefan



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