* DebBarma, Tarun Kanti <tarun.kanti@xxxxxx> [120222 08:46]: > On Wed, Feb 22, 2012 at 12:31 AM, Kevin Hilman <khilman@xxxxxx> wrote: > > While both level- and edge-triggered GPIOs are capable of generating > > interrupts, only edge-triggered GPIOs are capable of generating a > > module-level wakeup to the PRCM (c.f. 34xx NDA TRM section 25.5.3.2.) > > > > In order to ensure that devices using level-triggered GPIOs as > > interrupts can also cause wakeups (e.g. from idle), this patch enables > > edge-triggering for wakeup-enabled, level-triggered GPIOs when a GPIO > > bank is runtime-suspended (which also happens during idle.) > > > > This fixes a problem found in GPMC-connected network cards with GPIO > > interrupts (e.g. smsc911x on Zoom3, Overo, ...) where network booting > > with NFSroot was very slow since the GPIO IRQs used by the NIC were > > not generating PRCM wakeups, and thus not waking the system from idle. > > NOTE: until v3.3, this boot-time problem was somewhat masked because > > the UART init prevented WFI during boot until the full serial driver > > was available. Preventing WFI allowed regular GPIO interrupts to fire > > and this problem was not seen. After the UART runtime PM cleanups, we > > no longer avoid WFI during boot, so GPIO IRQs that were not causing > > wakeups resulted in very slow IRQ response times. > > > > Tested on platforms using level-triggered GPIOs for network IRQs using > > the SMSC911x NIC: 3530/Overo and 3630/Zoom3. > > > > Reported-by: Tony Lindgren <tony@xxxxxxxxxxx> > > Signed-off-by: Kevin Hilman <khilman@xxxxxx> > > I have tested on OMAP3430 by making modification to touchscreen GPIO. > (I had similar change in my next planned cleanup/fix series.) > If needed you can add my Tested-by: Work for me too: Tested-by: Tony Lindgren <tony@xxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html