[PATCH v4 0/2] WFE for long delays
Julien Thierry
julien.thierry at arm.com
Fri Oct 13 06:32:54 PDT 2017
It was pointed out that there are some windows where the event stream might not
be configured, meaning we cannot safely use WFE (e.g. when using PSCI
CPU_SUSPEND for idle, PSCI might reset CPU state).
The first patch provide a function to check whether the task is in state where
it can expect events from the event stream.
Second patch actually makes use of WFE in delays.
Changes since v1:
* Keep track of event stream state
* Do not use WFE when event stream might be misconfigured
Changes since v2:
* Use cpumask to track event stream state instead of percpu variable
* Tidy a bit code in arm64/lib/delay
* Do not factor asm-generic/delay code
Changes since v3:
* Use static initialiser for event stream cpumask
* Remove double negation when checking steam availability
* Use raw_smp_processor_id instead of smp_processor_id
* Fix typo
* Change macro argument to lower case
Cheers,
Julien Thierry (2):
arm_arch_timer: Expose event stream status
arm64: use WFE for long delays
arch/arm/include/asm/arch_timer.h | 1 +
arch/arm64/include/asm/arch_timer.h | 1 +
arch/arm64/lib/delay.c | 23 +++++++++++++++++++----
drivers/clocksource/arm_arch_timer.c | 25 ++++++++++++++++++++++---
include/clocksource/arm_arch_timer.h | 10 +++++++++-
5 files changed, 52 insertions(+), 8 deletions(-)
--
1.9.1
More information about the linux-arm-kernel
mailing list