Rockbox mail archiveSubject: Re: Sansa (PP502x?) GPIO interrupts in rockbox software
Re: Sansa (PP502x?) GPIO interrupts in rockbox software
From: Michael Sevakis <jethead71_at_sbcglobal.net>
Date: Thu, 10 May 2007 12:01:56 -0400
Some of what I said is definitely wrong. I _can_ see the bits set if I set during an interrupt if I keep them set and I can stop IRQs anytime it seems. These GPIO interrupts seem to be polled interrupts and the GPIO IRQ is actually a signal to poll for which devices need service. My problem is: I cannot seem to filter for CPU_HI_INT_STAT & GPIO_MASK to reject the need to check GPIOx_INT_STAT constantly. I can poll the devices during a timer interrupt and that's what was happening for but the GPIO happening reliably..unless...interestingly, if I keep polling the devices on _every_ timer interrupt, we'll also get more GPIO IRQs so actually polling seems to be important for keeping the main GPIO IRQ active but it appears _not_ during the same interrupt as the inital request to poll.
What you're observing makes almost perfect sense to me now. What I'd like to know is when it actually looks at the ports after it gets the GPIO IRQ and other details you can get.
Received on 2007-05-10