On Sat, Mar 26, 2011 at 1:24 PM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > On Sun, 27 Mar 2011, Varun Wadekar wrote: >> >> Thomas, then how do you think we should handle restoring of gpio states >> across suspend-resume cycles? > > That code is unused. Period. No caller, nothing nada. So what does it > handle? Tegra suspend support didn't make it into 2.6.39, but should get merged in 2.6.40, and will call tegra_gpio_suspend/resume. >> > - >> > - for (i = INT_GPIO_BASE; i < (INT_GPIO_BASE + TEGRA_NR_GPIOS); i++) { >> > - struct irq_desc *desc = irq_to_desc(i); >> > - if (!desc || (desc->status & IRQ_WAKEUP)) >> > - continue; >> > - enable_irq(i); >> > - } > > And this part is totally unacceptable and should have never been > merged. Further it is in the way of cleanups to the core code and as > there is no user I'm not willing to even think about what it does and > why it is there. > > FYI, the core code deals with interrupt suspending/resuming > already. So if there is a problem with that which does not cover your > specific problem, then you better talk to me before hacking up such > private workarounds and expecting that I tolerate them in unused code. Yes, the existing code wrong, and unnecessary. It was copied from mach-tegra/irq.c, which I later fixed, but I missed this one. I'll take this patch for 2.6.39-rc1, which will prevent merge conflicts between your tree and the tegra tree in 2.6.40. -- 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