Rob Herring wrote at Tuesday, November 29, 2011 4:17 PM: > On 11/29/2011 04:58 PM, Stephen Warren wrote: ... > > I've been looking at hooking up the Tegra GPIO controller's IRQ support > > through device tree. It looks like I need to call irq_domain_add_simple() > > for the GPIO node to make this work, and I think this needs to be triggered > > by of_irq_init()'s match table, and hence I need a single of_irq_init() > > call in Tegra's board-dt.c, which includes both the GIC and GPIO controller > > entries. > > > > Is my understanding here all correct? If so, I will just follow your > > initial suggestion and have tegra_init_irq() do just: > > Yes, you should have 1 of_irq_init call. Really the irqdomain code > should go into the gpio code. It sounds like you're saying: * The of_irq_init() call doesn't have to include all the IRQ controllers in the system. * So, it's fine for the Tegra GPIO controller's probe() function to simply call irq_domain_add_simple() for itself. Is that correct? If so, I'll gladly add the call to the GPIO controller and leave just the GIC to be handled via of_irq_init(). The only issue here is the usual device ordering issue; if the Tegra GPIO controller doesn't probe before devices that use it, then the IRQ domain won't exist. But, this is true for the interrupts themselves, so nothing new there. > Do you use generic irqchip for gpio? No, it's custom code. Some of the code could probably use the generic code, but there is some additional functionality beyond that. > If > so, I'm working on a patch adding irqdomain to generic irqchip. I still > need to debug a problem with it and have been too busy to get back to it. -- nvpublic -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html