Merge pull request #1137 from soby-mathew/sm/arm_plat_en_gicv3_save
authordavidcunado-arm <david.cunado@arm.com>
Fri, 3 Nov 2017 13:12:48 +0000 (13:12 +0000)
committerGitHub <noreply@github.com>
Fri, 3 Nov 2017 13:12:48 +0000 (13:12 +0000)
Enable GICv3 save for ARM platforms

1  2 
include/plat/arm/board/common/board_arm_def.h
include/plat/arm/common/arm_def.h
plat/arm/board/fvp/include/platform_def.h
plat/arm/common/arm_gicv2.c
plat/arm/common/arm_gicv3.c
plat/arm/css/common/css_pm.c

Simple merge
Simple merge
index cec6a9df77473fc2a65196f9ec5c38a3e85a041a,67d52452c70193e02787af3a5fffaf9891a1b42e..e273b774dc4df8c1e11315c0fc9f235601c9962a
  /* The GICv3 driver only needs to be initialized in EL3 */
  static uintptr_t rdistif_base_addrs[PLATFORM_CORE_COUNT];
  
 -/* Array of Group1 secure interrupts to be configured by the gic driver */
 -static const unsigned int g1s_interrupt_array[] = {
 -      PLAT_ARM_G1S_IRQS
 -};
 -
 -/* Array of Group0 interrupts to be configured by the gic driver */
 -static const unsigned int g0_interrupt_array[] = {
 -      PLAT_ARM_G0_IRQS
 +static const interrupt_prop_t arm_interrupt_props[] = {
 +      PLAT_ARM_G1S_IRQ_PROPS(INTR_GROUP1S),
 +      PLAT_ARM_G0_IRQ_PROPS(INTR_GROUP0)
  };
  
+ /*
+  * We save and restore the GICv3 context on system suspend. Allocate the
+  * data in the designated EL3 Secure carve-out memory
+  */
+ gicv3_redist_ctx_t rdist_ctx __section("arm_el3_tzc_dram");
+ gicv3_dist_ctx_t dist_ctx __section("arm_el3_tzc_dram");
  /*
   * MPIDR hashing function for translating MPIDRs read from GICR_TYPER register
   * to core position.
Simple merge