drivers: cpuidle: lpm-levels: Update ordering for broadcast timer
The idle driver on a core switches to using broadcast timer after a
Core's low power mode is determined. During cluster mode prediction,
the driver sets a timer to wake the cluster up to avoid penalities of
choosing a shallower low power mode for longer duration of time. In
order to reprogram the broadcast timer, the driver forcibly disable and
enable broadcast timer from within the idle thread. This causes
stability issues with local timers not getting enabled on CPUs that
could have woken up for a rude interrupt.
Fix by moving the switch to broadcast to after CPU/cluster prediction
within the idle driver.
Change-Id: I84c7129fcd8fd9ea61d78658d88c69253db45359
Signed-off-by:
Mahesh Sivasubramanian <msivasub@codeaurora.org>
Loading
Please register or sign in to comment