blob: c7d850a009551dd2985a83c0a4b9fd86dd296c63 [file] [log] [blame]
Dimitris Papastamos89736dd2018-02-13 11:28:02 +00001/*
2 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#include <cortex_ares.h>
8#include <cpuamu.h>
9#include <pubsub_events.h>
10
11static void *cortex_ares_context_save(const void *arg)
12{
13 if (midr_match(CORTEX_ARES_MIDR) != 0)
14 cpuamu_context_save(CORTEX_ARES_AMU_NR_COUNTERS);
15 return 0;
16}
17
18static void *cortex_ares_context_restore(const void *arg)
19{
20 if (midr_match(CORTEX_ARES_MIDR) != 0)
21 cpuamu_context_restore(CORTEX_ARES_AMU_NR_COUNTERS);
22 return 0;
23}
24
25SUBSCRIBE_TO_EVENT(psci_suspend_pwrdown_start, cortex_ares_context_save);
26SUBSCRIBE_TO_EVENT(psci_suspend_pwrdown_finish, cortex_ares_context_restore);