1. 11 May, 2012 2 commits
    • Kevin Hilman's avatar
      ARM: OMAP3: PM: fix shared PRCM interrupts: leave disabled at boot · 99b59df0
      Kevin Hilman authored
      By default, request_irq() will auto-enable the requested IRQ.
      
      For PRCM interrupts, we may want to avoid that until the PM core code
      is fully ready to handle the interrupts.  This is particularily true
      for IO pad interrupts on OMAP3, which are shared between the hwmod
      core and the PRM core.
      
      In order to avoid PRCM IO-chain interrupts until the PM core is ready
      to handle them, ready, set the IRQ_NOAUTOEN flag for the PRCM IO-chain
      interrupt,  which means it will remain disabled after request_irq().
      
      Then, explicitly enable the PRCM interrupts after the request_irq() in
      the PM core (but not in the hwmod core.)
      
      Special thanks to Tero Kristo for suggesting to isolate the fix to
      only the IO-chain interrupt on OMAP3 instead of all PRCM interrupts.
      
      Cc: Tero Kristo <t-kristo@ti.com>
      Acked-by: default avatarPaul Walmsley <paul@pwsan.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      99b59df0
    • NeilBrown's avatar
      ARM: OMAP2+: INTC: fix suspend abort, set IRQCHIP_SKIP_SET_WAKE · e3c83c2d
      NeilBrown authored
      Without an ->irq_set_wake() method in an irq_chip, calls to
      enable_irq_wake() will fail.  This also causes these interrupts to not
      be able to abort suspend (via check_wakeup_irqs() in late suspend.)
      
      Currently, we don't implement ->irq_set_wake() for INTC interrupts
      because they default to be wakeup enabled by setting the GRPSEL bits
      in PM init.  Even though there is no ->irq_set_wake(), we want
      enable_irq_wake() to succeed so these interrupts can abort suspend
      when necessary.
      
      To fix, set IRQCHIP_SKIP_SET_WAKE flag for all the INTC
      interrupts which avoids trying to check irq_chip->irq_set_wake()
      and failing when it doesn't exist.
      
      Longer term, we need to implement ->irq_set_wake() for the INTC
      which can manage the appropriate GRPSEL bits.
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      [khilman@ti.com: rework changelog]
      Acked-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
      Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
      e3c83c2d
  2. 10 May, 2012 5 commits
  3. 08 May, 2012 9 commits
  4. 06 May, 2012 5 commits
  5. 05 May, 2012 10 commits
  6. 04 May, 2012 9 commits