Add build configuration for timer save/restore
At present, non-secure timer register contents are saved and restored as
part of world switch by BL3-1. This effectively means that the
non-secure timer stops, and non-secure timer interrupts are prevented
from asserting until BL3-1 switches back, introducing latency for
non-secure services. Often, secure world might depend on alternate
sources for secure interrupts (secure timer or platform timer) instead
of non-secure timers, in which case this save and restore is
unnecessary.

This patch introduces a boolean build-time configuration NS_TIMER_SWITCH
to choose whether or not to save and restore non-secure timer registers
upon world switch. The default choice is made not to save and restore
them.

Fixes ARM-software/tf-issues#148

Change-Id: I1b9d623606acb9797c3e0b02fb5ec7c0a414f37e
1 parent c3c1e9b commit 2da8d8bfc0877b9c723514133554dfee4c0638f1
@Jeenu Viswambharan Jeenu Viswambharan authored on 12 May 2014
Showing 4 changed files
View
Makefile
View
bl31/aarch64/context.S
View
docs/user-guide.md
View
include/bl31/context.h