diff options
author | Soby Mathew <soby.mathew@arm.com> | 2014-08-14 12:49:05 +0100 |
---|---|---|
committer | Dan Handley <dan.handley@arm.com> | 2014-08-20 19:14:31 +0100 |
commit | add403514d0f792b9df3c81006cd9a9395b213f6 (patch) | |
tree | 284f2c6ee8f2f93eb15a4d698ed79d896e1dd3f4 /plat/common | |
parent | 24fb838f965cc1250831cd021d6a18b0d371b853 (diff) |
Add CPU specific power management operations
This patch adds CPU core and cluster power down sequences to the CPU specific
operations framework introduced in a earlier patch. Cortex-A53, Cortex-A57 and
generic AEM sequences have been added. The latter is suitable for the
Foundation and Base AEM FVPs. A pointer to each CPU's operations structure is
saved in the per-cpu data so that it can be easily accessed during power down
seqeunces.
An optional platform API has been introduced to allow a platform to disable the
Accelerator Coherency Port (ACP) during a cluster power down sequence. The weak
definition of this function (plat_disable_acp()) does not take any action. It
should be overriden with a strong definition if the ACP is present on a
platform.
Change-Id: I8d09bd40d2f528a28d2d3f19b77101178778685d
Diffstat (limited to 'plat/common')
-rw-r--r-- | plat/common/aarch64/platform_helpers.S | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/plat/common/aarch64/platform_helpers.S b/plat/common/aarch64/platform_helpers.S index 1229ead3..c236fd7b 100644 --- a/plat/common/aarch64/platform_helpers.S +++ b/plat/common/aarch64/platform_helpers.S @@ -39,6 +39,7 @@ .weak plat_crash_console_init .weak plat_crash_console_putc .weak plat_reset_handler + .weak plat_disable_acp /* ----------------------------------------------------- * int platform_get_core_pos(int mpidr); @@ -93,3 +94,12 @@ func plat_crash_console_putc */ func plat_reset_handler ret + + /* ----------------------------------------------------- + * Placeholder function which should be redefined by + * each platform. This function is allowed to use + * registers x0 - x17. + * ----------------------------------------------------- + */ +func plat_disable_acp + ret |