• Lorenzo Pieralisi's avatar
    ARM: vexpress: tc2: disable GIC CPU IF in tc2_pm_suspend · 9ee2ee0f
    Lorenzo Pieralisi authored
    To prevent cores from exiting wfi when they are about to be shut down
    the GIC CPU IF must be disabled so that the GIC CPU IF IRQ output line
    is not asserted to the cores. wfi completion must be prevented since,
    in absence of coordinating HW logic, if the power controller receives
    a standbywfi signal but in the meantime the processor restarts executing
    owing to a pending IRQ, the core might be reset when running in a
    non-quiescent state (eg with pending load/store transactions)
    
    Raw GIC distributor IRQ signals are routed to the power controller, that
    is capable of taking core out of reset on pending IRQs even if their GIC
    CPU IF is disabled, thus keeping the normal wfi behaviour.
    
    GIC CPU IF is restored upon CPU wake-up by the respective MCPM API
    consumers (ie CPU idle driver and suspend to RAM thread).
    Signed-off-by: default avatarLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
    Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
    9ee2ee0f
tc2_pm.c 9.02 KB