blob: 8e4a87afd44fc84e8b73b856afdc2e5d4e895385 [file] [log] [blame]
Jeenu Viswambharane3f22002017-09-22 08:32:10 +01001/*
2 * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
Antonio Nino Diaze0f90632018-12-14 00:18:21 +00007#include <lib/el3_runtime/pubsub.h>
Jeenu Viswambharane3f22002017-09-22 08:32:10 +01008
9/*
10 * This file defines a list of pubsub events, declared using
11 * REGISTER_PUBSUB_EVENT() macro.
12 */
Jeenu Viswambharan55e56a92017-09-22 08:32:10 +010013
14/*
15 * Event published after a CPU has been powered up and finished its
16 * initialization.
17 */
18REGISTER_PUBSUB_EVENT(psci_cpu_on_finish);
Dimitris Papastamosa7921b92017-10-13 15:27:58 +010019
Dimitris Papastamosd1a18412017-11-28 15:16:00 +000020/*
21 * These events are published before/after a CPU has been powered down/up
22 * via the PSCI CPU SUSPEND API.
23 */
24REGISTER_PUBSUB_EVENT(psci_suspend_pwrdown_start);
25REGISTER_PUBSUB_EVENT(psci_suspend_pwrdown_finish);
26
Dimitris Papastamosa7921b92017-10-13 15:27:58 +010027#ifdef AARCH64
28/*
29 * These events are published by the AArch64 context management framework
30 * after the secure context is restored/saved via
31 * cm_el1_sysregs_context_{restore,save}() API.
32 */
33REGISTER_PUBSUB_EVENT(cm_entering_secure_world);
34REGISTER_PUBSUB_EVENT(cm_exited_secure_world);
35
36/*
37 * These events are published by the AArch64 context management framework
38 * after the normal context is restored/saved via
39 * cm_el1_sysregs_context_{restore,save}() API.
40 */
41REGISTER_PUBSUB_EVENT(cm_entering_normal_world);
42REGISTER_PUBSUB_EVENT(cm_exited_normal_world);
43#endif /* AARCH64 */