[Linaro-uefi,2/3] Platforms/AMD/Styx: use unicore PrePei driver if PSCI is enabled

Message ID 1461952739-31629-2-git-send-email-ard.biesheuvel@linaro.org
State New
Headers show

Commit Message

Ard Biesheuvel April 29, 2016, 5:58 p.m.
When building the firmware with PSCI support, only the primary core enters
UEFI, and the secondaries remain under the control of the EL3 firmware
until the moment the OS invokes PSCI methords to release them.

This means we can use the UP variant or PrePeiCore in this case.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 Platforms/AMD/Styx/HuskyBoard/HuskyBoard.dsc         | 4 ++++
 Platforms/AMD/Styx/HuskyBoard/HuskyBoard.fdf         | 4 ++++
 Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc | 4 ++++
 Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf | 4 ++++
 4 files changed, 16 insertions(+)

Patch

diff --git a/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.dsc b/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.dsc
index a60e09682df4..2e8cbffd80c9 100644
--- a/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.dsc
+++ b/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.dsc
@@ -547,7 +547,11 @@  DEFINE TRANS_CODE = $(EL3_TO_EL2)
   #
   # PEI Phase modules
   #
+!if $(DO_PSCI)
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
+!else
   ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+!endif
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
     <LibraryClasses>
diff --git a/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.fdf b/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.fdf
index 6cb89d394010..5543b08b2dc9 100644
--- a/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.fdf
+++ b/Platforms/AMD/Styx/HuskyBoard/HuskyBoard.fdf
@@ -248,7 +248,11 @@  READ_STATUS        = TRUE
 READ_LOCK_CAP      = TRUE
 READ_LOCK_STATUS   = TRUE
 
+!if $(DO_PSCI)
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
+!else
   INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+!endif
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
   INF AmdModulePkg/Iscp/IscpPei.inf
diff --git a/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc b/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc
index bbb6b9edcbaf..e4ece5e23218 100644
--- a/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc
+++ b/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc
@@ -558,7 +558,11 @@  DEFINE TRANS_CODE = $(EL3_TO_EL2)
   #
   # PEI Phase modules
   #
+!if $(DO_PSCI)
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
+!else
   ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+!endif
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
     <LibraryClasses>
diff --git a/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf b/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf
index d0fb9000e2a2..263a267fbae7 100644
--- a/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf
+++ b/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.fdf
@@ -247,7 +247,11 @@  READ_STATUS        = TRUE
 READ_LOCK_CAP      = TRUE
 READ_LOCK_STATUS   = TRUE
 
+!if $(DO_PSCI)
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
+!else
   INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+!endif
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
   INF AmdModulePkg/Iscp/IscpPei.inf