You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
146 lines
5.5 KiB
146 lines
5.5 KiB
9 months ago
|
From 8be1d7253ba8a7d30bb54835ef1fc866aa62e216 Mon Sep 17 00:00:00 2001
|
||
|
From: Laszlo Ersek <lersek@redhat.com>
|
||
|
Date: Wed, 14 Oct 2015 13:59:20 +0200
|
||
|
Subject: ArmPlatformPkg: PrePeiCore: write early hello message to the serial
|
||
|
port (RH)
|
||
|
|
||
|
Notes about the RHEL-8.3/20200603-ca407c7246bf [edk2-stable202005] ->
|
||
|
RHEL-8.5/20210520-e1999b264f1f [edk2-stable202105] rebase:
|
||
|
|
||
|
- no change
|
||
|
|
||
|
Notes about the RHEL-8.2/20190904-37eef91017ad [edk2-stable201908] ->
|
||
|
RHEL-8.3/20200603-ca407c7246bf [edk2-stable202005] rebase:
|
||
|
|
||
|
- no change
|
||
|
|
||
|
Notes about the RHEL-8.1/20190308-89910a39dcfd [edk2-stable201903] ->
|
||
|
RHEL-8.2/20190904-37eef91017ad [edk2-stable201908] rebase:
|
||
|
|
||
|
- no change
|
||
|
|
||
|
Notes about the RHEL-8.0/20180508-ee3198e672e2 ->
|
||
|
RHEL-8.1/20190308-89910a39dcfd rebase:
|
||
|
|
||
|
- no change
|
||
|
|
||
|
Notes about the RHEL-7.6/ovmf-20180508-2.gitee3198e672e2.el7 ->
|
||
|
RHEL-8.0/20180508-ee3198e672e2 rebase:
|
||
|
|
||
|
- reorder the rebase changelog in the commit message so that it reads like
|
||
|
a blog: place more recent entries near the top
|
||
|
- no changes to the patch body
|
||
|
|
||
|
Notes about the 20171011-92d07e48907f -> 20180508-ee3198e672e2 rebase:
|
||
|
|
||
|
- adapt to upstream commit 7e2a8dfe8a9a ("ArmPlatformPkg/PrePeiCore: seed
|
||
|
temporary stack before entering PEI core", 2017-11-09) -- conflict
|
||
|
resolution in "ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf"
|
||
|
|
||
|
Notes about the 20170228-c325e41585e3 -> 20171011-92d07e48907f rebase:
|
||
|
|
||
|
- no changes
|
||
|
|
||
|
Notes about the 20160608b-988715a -> 20170228-c325e41585e3 rebase:
|
||
|
|
||
|
- no changes
|
||
|
|
||
|
The FixedPcdGetSize() macro expands to an integer constant, therefore an
|
||
|
optimizing compiler can eliminate the new code, if the platform DSC
|
||
|
doesn't override the empty string (size=1) default of
|
||
|
PcdEarlyHelloMessage.
|
||
|
|
||
|
RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1270279
|
||
|
Downstream only:
|
||
|
<http://thread.gmane.org/gmane.comp.bios.edk2.devel/2996/focus=3433>.
|
||
|
|
||
|
Contributed-under: TianoCore Contribution Agreement 1.0
|
||
|
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
|
||
|
(cherry picked from commit b16c4c505ce0e27305235533eac9236aa66f132e)
|
||
|
(cherry picked from commit 742e5bf6d5ce5a1e73879d6e5c0dd00feda7a9ac)
|
||
|
(cherry picked from commit 93d69eb9393cf05af90676253875c59c1bec67fd)
|
||
|
(cherry picked from commit 638594083b191f84f5d9333eb6147a31570f5a5a)
|
||
|
(cherry picked from commit f4b7aae411d88b2b83f85d20ef06a4032a57e7de)
|
||
|
(cherry picked from commit bb71490fdda3b38fa9f071d281b863f9b64363bf)
|
||
|
(cherry picked from commit 8d5a8827aabc67cb2a046697e1a750ca8d9cc453)
|
||
|
(cherry picked from commit 49fe5596cd79c94d903c4d506c563d642ccd69aa)
|
||
|
---
|
||
|
ArmPlatformPkg/PrePeiCore/MainMPCore.c | 5 +++++
|
||
|
ArmPlatformPkg/PrePeiCore/MainUniCore.c | 5 +++++
|
||
|
ArmPlatformPkg/PrePeiCore/PrePeiCore.h | 1 +
|
||
|
ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf | 2 ++
|
||
|
ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf | 2 ++
|
||
|
5 files changed, 15 insertions(+)
|
||
|
|
||
|
diff --git a/ArmPlatformPkg/PrePeiCore/MainMPCore.c b/ArmPlatformPkg/PrePeiCore/MainMPCore.c
|
||
|
index 859f1adf20..cf9e65bb7c 100644
|
||
|
--- a/ArmPlatformPkg/PrePeiCore/MainMPCore.c
|
||
|
+++ b/ArmPlatformPkg/PrePeiCore/MainMPCore.c
|
||
|
@@ -111,6 +111,11 @@ PrimaryMain (
|
||
|
UINTN TemporaryRamBase;
|
||
|
UINTN TemporaryRamSize;
|
||
|
|
||
|
+ if (FixedPcdGetSize (PcdEarlyHelloMessage) > 1) {
|
||
|
+ SerialPortWrite (FixedPcdGetPtr (PcdEarlyHelloMessage),
|
||
|
+ FixedPcdGetSize (PcdEarlyHelloMessage) - 1);
|
||
|
+ }
|
||
|
+
|
||
|
CreatePpiList (&PpiListSize, &PpiList);
|
||
|
|
||
|
// Enable the GIC Distributor
|
||
|
diff --git a/ArmPlatformPkg/PrePeiCore/MainUniCore.c b/ArmPlatformPkg/PrePeiCore/MainUniCore.c
|
||
|
index 220f9b5680..158cc34c77 100644
|
||
|
--- a/ArmPlatformPkg/PrePeiCore/MainUniCore.c
|
||
|
+++ b/ArmPlatformPkg/PrePeiCore/MainUniCore.c
|
||
|
@@ -29,6 +29,11 @@ PrimaryMain (
|
||
|
UINTN TemporaryRamBase;
|
||
|
UINTN TemporaryRamSize;
|
||
|
|
||
|
+ if (FixedPcdGetSize (PcdEarlyHelloMessage) > 1) {
|
||
|
+ SerialPortWrite (FixedPcdGetPtr (PcdEarlyHelloMessage),
|
||
|
+ FixedPcdGetSize (PcdEarlyHelloMessage) - 1);
|
||
|
+ }
|
||
|
+
|
||
|
CreatePpiList (&PpiListSize, &PpiList);
|
||
|
|
||
|
// Adjust the Temporary Ram as the new Ppi List (Common + Platform Ppi Lists) is created at
|
||
|
diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCore.h b/ArmPlatformPkg/PrePeiCore/PrePeiCore.h
|
||
|
index 7b155a8a61..e9e283f9ec 100644
|
||
|
--- a/ArmPlatformPkg/PrePeiCore/PrePeiCore.h
|
||
|
+++ b/ArmPlatformPkg/PrePeiCore/PrePeiCore.h
|
||
|
@@ -15,6 +15,7 @@
|
||
|
#include <Library/DebugLib.h>
|
||
|
#include <Library/IoLib.h>
|
||
|
#include <Library/PcdLib.h>
|
||
|
+#include <Library/SerialPortLib.h>
|
||
|
|
||
|
#include <PiPei.h>
|
||
|
#include <Ppi/TemporaryRamSupport.h>
|
||
|
diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf b/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
|
||
|
index fb01dd1a11..a6681c1032 100644
|
||
|
--- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
|
||
|
+++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
|
||
|
@@ -69,6 +69,8 @@
|
||
|
gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize
|
||
|
gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize
|
||
|
|
||
|
+ gArmPlatformTokenSpaceGuid.PcdEarlyHelloMessage
|
||
|
+
|
||
|
gArmTokenSpaceGuid.PcdGicDistributorBase
|
||
|
gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
|
||
|
gArmTokenSpaceGuid.PcdGicSgiIntId
|
||
|
diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf b/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
|
||
|
index e9eb092d3a..c98dc82f0c 100644
|
||
|
--- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
|
||
|
+++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
|
||
|
@@ -67,4 +67,6 @@
|
||
|
gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize
|
||
|
gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize
|
||
|
|
||
|
+ gArmPlatformTokenSpaceGuid.PcdEarlyHelloMessage
|
||
|
+
|
||
|
gEfiMdeModulePkgTokenSpaceGuid.PcdInitValueInTempStack
|
||
|
--
|
||
|
2.27.0
|
||
|
|