Subject: Yenta: probing ISA IRQs on a non-ISA machine and sometimes locking up! ;)

From: Jeff Baitis <[email-masked]>
Date: Thu, 1 May 2003 18:47:11 -0700

Delving further into the PCI->CardBus bridge, I noticed that my system locks up
under certain conditions when the yenta_socket driver is trying to probe
for PCMCIA ISA interrupts.

yenta_get_socket_capabilities() calls probe_irq_on() in arch/mips/kernel/irq.c.
The lock up happens when the probe performs the first iteration over the IRQ
descriptors, looking for longstanding IRQs. I added some debugging output, and
it get down to IRQ 34, and then stopped. (AU1000 GPIO pin 2? this pin isn't
connected on our board... )

Anyhow, when the probe *does* succeed, the IRQ poll returns 0x0000. I guess my
question is, why even bother with this polling on a machine without an ISA bus?
I believe that the CardBus bridge PCI configuration registers route socket
events to the PCI INTA pin anyway...

My happy hack is to have yenta_get_socket_capabilities always return 0x0. But
I'm still concerned that probe_irq_on() intermittently fails...

Thanks for letting me interrupt you with this question.

Regards,
Jeff

-- 
         Jeffrey Baitis - Associate Software Engineer

                    Evolution Robotics, Inc.
                     130 West Union Street
                       Pasadena CA 91103

 tel: 626.535.2776  |  fax: 626.535.2777  |  [email-masked]