Messages in this thread | | | From | no_spam@ntlworld ... | Subject | Fwd: Missing interrupts? | Date | Fri, 18 Jul 2003 16:57:32 +0100 |
| |
---------- Forwarded Message ----------
Content-Type: text/plain; charset="us-ascii" From: SA <bullet.train@ntlworld.com> To: linux-kernel@vger.kernel.org Subject: Missing interrupts? Date: Fri, 18 Jul 2003 16:51:21 +0100 User-Agent: KMail/1.4.3 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-Id: <200307181651.21730.bullet.train@ntlworld.com> Status: RO X-Status: S Dear LK,
I am testing a new device driver and have found that one one machine it does not receive any interrupts. I am stumped by this problem and wonder if anyone had any advice before I start to take things apart blindly.
Machines test where everything worked: kernels 2.4.18-10 and 2.4.18-24.8.0 on athlon based PCs
Machine where interrupts failed to appear: kernel 2.4.18-3 on a pentium 4.
I register the interrupt on open with err=request_irq(pi_stage.interrupt,pi_int_handler,SA_SHIRQ,PI_IRQ_ID,(void*) &pi_stage);
My handler looks like
static void pi_int_handler(int irq, void *dev_id,struct pt_regs *regs){ u32 event; pi_stage.ints_all++; event=pi_read_control(PI_STAGE_INTEVENTSET); if(event & PI_STAGE_ALLINTS){ pi_write_control(PI_STAGE_INTEVENTCLEAR,event &PI_STAGE_ALLINTS); if(event & PI_STAGE_INTGPIO3) pi_stage.ints_io++; if(event & PI_STAGE_GPINT){ pi_stage.ints_axis++; tasklet_schedule(&pi_tasklet); } pi_stage.ints_board++; } }
On the dodgy machine I see the driver and card working fine except for the missing interrupts. The variable pi_stage.ints_all is never incremented and /proc/interrupts never reports any interrupts. On all machines the conditions that generate the interrupts do occur.
It looks like on this one machine that interrupts are never received by the system.
Is it possible that differences between the BIOSs on the machines could cause this? (ie my card is init'd differently so on the bad machine the ints are never generated or received).
Any suggestions?
Thanks SA
-------------------------------------------------------
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |