• Dave Gerlach's avatar
    ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled · 6d609b35
    Dave Gerlach authored
    When the RTC lock and unlock functions were introduced it was likely
    assumed that they would always be called from irq enabled context, hence
    the use of local_irq_disable/enable. This is no longer true as the
    RTC+DDR path makes a late call during the suspend path after irqs
    have been disabled to enable the RTC hwmod which calls both unlock and
    lock, leading to IRQs being reenabled through the local_irq_enable call
    in omap_hwmod_rtc_lock call.
    
    To avoid this change the local_irq_disable/enable to
    local_irq_save/restore to ensure that from whatever context this is
    called the proper IRQ configuration is maintained.
    Signed-off-by: default avatarDave Gerlach <d-gerlach@ti.com>
    Signed-off-by: default avatarKeerthy <j-keerthy@ti.com>
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    6d609b35
omap_hwmod_reset.c 3.73 KB