Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-29 Thread Grant Likely
On Thu, Sep 29, 2011 at 08:22:06PM +, Tabi Timur-B04825 wrote: > Grant Likely wrote: > > A chained handler has an expedited path through the interrupt code for > > handling it (basically, it skips handling it at the parent controller > > and passes through to the child, but it cannot handle mul

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-29 Thread Felix Radensky
Hi Grant, On 09/29/2011 08:27 PM, Grant Likely wrote: On Wed, Sep 28, 2011 at 08:52:30PM +, Tabi Timur-B04825 wrote: On Tue, Sep 27, 2011 at 1:29 PM, Grant Likely wrote: The solution is to make the gpio driver register as a regular interrupt handler, and not as a chained handler. I was

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-29 Thread Tabi Timur-B04825
Grant Likely wrote: > A chained handler has an expedited path through the interrupt code for > handling it (basically, it skips handling it at the parent controller > and passes through to the child, but it cannot handle multiple chained > children on a single irq input. So you can't do a shared c

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-29 Thread Grant Likely
On Wed, Sep 28, 2011 at 08:52:30PM +, Tabi Timur-B04825 wrote: > On Tue, Sep 27, 2011 at 1:29 PM, Grant Likely > wrote: > > > The solution is to make the gpio driver register as a regular > > interrupt handler, and not as a chained handler. > > I was wondering about that. > > What exactly

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-28 Thread Tabi Timur-B04825
On Tue, Sep 27, 2011 at 1:29 PM, Grant Likely wrote: > The solution is to make the gpio driver register as a regular > interrupt handler, and not as a chained handler. I was wondering about that. What exactly is a chained handler? How is it different from a regular handler? -- Timur Tabi Lin

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-27 Thread Felix Radensky
Hi Grant, On 09/27/2011 09:29 PM, Grant Likely wrote: On Tue, Sep 27, 2011 at 04:59:28PM +0300, Felix Radensky wrote: Hi, Looks like 8xxx GPIO driver cannot properly handle interrupts when multiple GPIO controllers exist in the system. On Freescale P1022 there are 3 GPIO controllers. All 3 u

Re: Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-27 Thread Grant Likely
On Tue, Sep 27, 2011 at 04:59:28PM +0300, Felix Radensky wrote: > Hi, > > Looks like 8xxx GPIO driver cannot properly handle interrupts > when multiple GPIO controllers exist in the system. > > On Freescale P1022 there are 3 GPIO controllers. All 3 use > the same interrupt line, internal interru

Handling multiple GPIO controllers in 8xxx GPIO driver

2011-09-27 Thread Felix Radensky
Hi, Looks like 8xxx GPIO driver cannot properly handle interrupts when multiple GPIO controllers exist in the system. On Freescale P1022 there are 3 GPIO controllers. All 3 use the same interrupt line, internal interrupt 31. If all controllers are defined in device tree set_irq_chained_handler(