[patches 6/8] pcmcia: remove racy try_irq()

David Hinds dhinds at sonic.net
Wed Jan 12 12:29:52 EST 2005


On Wed, Jan 12, 2005 at 08:54:49AM +0000, Russell King wrote:
> On Tue, Jan 11, 2005 at 04:42:20PM -0800, David Hinds wrote:
> > On Tue, Jan 11, 2005 at 10:28:29PM +0000, Russell King wrote:
> > 
> > I believe that this only handles the case where two 8250 ports on the
> > same card share an interrupt, where the card includes some logic to
> > buffer the interrupts before they hit the bus.  It cannot handle the
> > case where ports on different cards are sharing.
> 
> It does handle this case - it doesn't care whether the ports are on the
> same card or not.  It loops over all 8250 ports on the same interrupt
> until they've *all* reported that they aren't asserting an interrupt
> request.  This way, we can be sure that the ISA interrupt line has
> returned to "normal" such that another interrupt is possible.

This may work with some cards, but electrically, ISA interrupt lines
are not designed to have multiple drivers, and setting things up this
way may cause neither card to be able to trigger an interrupt, or
worse.

http://www.dirac.org/linux/misc/interrupt_sharing.html

-- Dave



More information about the linux-pcmcia mailing list