> > What should I look for in attempting to eliminate spurious interrupts? Can > > they be eliminated? > > The CYGNUM_HAL_INTERRUPT_NONE return from hal_IRQ_handler() only > happens when an interrupt occurs but the interrupt controller denies > all knowledge of it. One possibility is that hal_IRQ_handler() is > decoding a real interrupt wrongly and generating -1 by mistake. > > What you need to do is find out why hal_IRQ_handler() is returning > this value. If you can put a breakpoint in hal_IRQ_handler() > where CYGNUM_HAL_INTERRUPT_NONE is returned, then you should be able > to look at all the relevant device and interrupt controller registers > and find out what is going on.
Also check that you have level vs edge trigger correct for your hardware. It could be a hardware error, eg a pulse is too short, a floating interrupt signal, some device which does not get reset when the process does etc. Andrew -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss