Browse Source

Merge pull request #1184 from antonio-nino-diaz-arm/an/bl31-in-dram

fvp: Disable SYSTEM_SUSPEND when ARM_BL31_IN_DRAM
pull/1191/head
davidcunado-arm 7 years ago
committed by GitHub
parent
commit
9f0ee04f5d
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 16
      plat/arm/board/fvp/fvp_pm.c
  2. 1
      plat/arm/board/fvp/include/platform_def.h
  3. 1
      services/std_svc/spm/secure_partition_setup.c

16
plat/arm/board/fvp/fvp_pm.c

@ -402,12 +402,20 @@ plat_psci_ops_t plat_arm_psci_pm_ops = {
.validate_ns_entrypoint = arm_validate_psci_entrypoint,
.translate_power_state_by_mpidr = fvp_translate_power_state_by_mpidr,
.get_node_hw_state = fvp_node_hw_state,
#if !ARM_BL31_IN_DRAM
/*
* The TrustZone Controller is set up during the warmboot sequence after
* resuming the CPU from a SYSTEM_SUSPEND. If BL31 is located in SRAM
* this is not a problem but, if it is in TZC-secured DRAM, it tries to
* reconfigure the same memory it is running on, causing an exception.
*/
.get_sys_suspend_power_state = fvp_get_sys_suspend_power_state,
/*
* mem_protect is not supported in RESET_TO_BL31 and RESET_TO_SP_MIN,
* as that would require mapping in all of NS DRAM into BL31 or BL32.
*/
#endif
#if !RESET_TO_BL31 && !RESET_TO_SP_MIN
/*
* mem_protect is not supported in RESET_TO_BL31 and RESET_TO_SP_MIN,
* as that would require mapping in all of NS DRAM into BL31 or BL32.
*/
.mem_protect_chk = arm_psci_mem_protect_chk,
.read_mem_protect = arm_psci_read_mem_protect,
.write_mem_protect = arm_nor_psci_write_mem_protect,

1
plat/arm/board/fvp/include/platform_def.h

@ -8,6 +8,7 @@
#define __PLATFORM_DEF_H__
#include <arm_def.h>
#include <arm_spm_def.h>
#include <board_arm_def.h>
#include <common_def.h>
#include <tzc400.h>

1
services/std_svc/spm/secure_partition_setup.c

@ -6,7 +6,6 @@
#include <arch.h>
#include <arch_helpers.h>
#include <arm_spm_def.h>
#include <assert.h>
#include <common_def.h>
#include <context.h>

Loading…
Cancel
Save