On Thu, Jan 20, 2011 at 4:12 PM, Gilles Chanteperdrix <[email protected]> wrote: > Henri Roosen wrote: >> Hi, >> >> I have an ARM based platform which is similar to the at91sam9263ek >> eval board. One of the differences is that touchscreen irq is on pin >> PB31 instead of PA15. The 'arch/arm/mach-at91/board-sam9263ek.c' has >> been changed for this. >> >> Touch works when using the kernel without Xenomai. >> When using the same kernel with Xenomai patches, touch doesn't work. I >> get only 2 interrupts on the GPIO pin (cat /proc/interrupts). >> >> Anyone an idea why the Xenomai enabled kernel stops generating >> interrupts on the GPIO pins while the non-Xenomai enabled kernel >> doesn't? > > Xenomai does not change anything. However, the I-pipe patch changes the > way interrupts are handled. Now, we have to figure out exactly how this > is an issue. > > Is this GPIO a muxed GPIO?
Pin PB31 is a muxed GPIO IRQ. > > As a first test, could you try commenting out the > #define __IPIPE_FEATURE_PIC_MUTE > in arch/arm/mach-at91/include/mach/irqs.h ? > Commenting out the define has no difference; still get 2 irq's. > Have you tried commenting out the line you show us which disables > interrupts? Can you explain why this interrupt line is using > handle_simple_IRQ if it is not a muxed GPIO? I tried not disabling the IRQ and not setting the irq_disabled flag in the isr, but that unfortunately always resulted in unbalanced enables for the IRQ and finally a lock up of the system. Have to dig into the driver code a little deeper if I want to balance it. Interesting is that I get more IRQ's than just 2. Even many more than I expect for one touch (>100) which tells me the comment in the driver's isr makes sense. And which also indicates this problem is likely related to disabling the irq here. (BTW: tried ipipe 1.18-01 which shows the same problem) Thanks for helping! Henri > > -- > Gilles. > _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
