aboutsummaryrefslogtreecommitdiffstats
path: root/include/lib/extensions
diff options
context:
space:
mode:
authorDimitris Papastamos <dimitris.papastamos@arm.com>2017-10-13 12:06:06 +0100
committerDimitris Papastamos <dimitris.papastamos@arm.com>2017-11-20 09:55:01 +0000
commit281a08cc6438d868bd1b0bcf19bc6c95207b42ac (patch)
treec75a7e1192f49c1d091cbe7d307ec65fe2b196a7 /include/lib/extensions
parentc776deed60b3d7f30f3095ee98c3f0b3c815c348 (diff)
downloadplatform_external_arm-trusted-firmware-281a08cc6438d868bd1b0bcf19bc6c95207b42ac.tar.gz
platform_external_arm-trusted-firmware-281a08cc6438d868bd1b0bcf19bc6c95207b42ac.tar.bz2
platform_external_arm-trusted-firmware-281a08cc6438d868bd1b0bcf19bc6c95207b42ac.zip
Refactor Statistical Profiling Extensions implementation
Factor out SPE operations in a separate file. Use the publish subscribe framework to drain the SPE buffers before entering secure world. Additionally, enable SPE before entering normal world. A side effect of this change is that the profiling buffers are now only drained when a transition from normal world to secure world happens. Previously they were drained also on return from secure world, which is unnecessary as SPE is not supported in S-EL1. Change-Id: I17582c689b4b525770dbb6db098b3a0b5777b70a Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
Diffstat (limited to 'include/lib/extensions')
-rw-r--r--include/lib/extensions/spe.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/lib/extensions/spe.h b/include/lib/extensions/spe.h
new file mode 100644
index 000000000..8a74127a6
--- /dev/null
+++ b/include/lib/extensions/spe.h
@@ -0,0 +1,13 @@
+/*
+ * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef __SPE_H__
+#define __SPE_H__
+
+void spe_enable(int el2_unused);
+void spe_disable(void);
+
+#endif /* __SPE_H__ */