public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
@ 2024-07-29 12:22 Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 1/5] Platform AARCH64: Drop leftover references to deleted timer PCD Ard Biesheuvel via groups.io
                   ` (6 more replies)
  0 siblings, 7 replies; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

The original EDK2 port to 32-bit ARM supported multi-core but on today's
ARM systems, only a single CPU enters the non-secure firmware and the
MPCore drivers are obsolete.

Stop using them in edk2-platforms so we can remove them entirely from
edk2.

Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Rebecca Cran <rebecca@os.amperecomputing.com>
Cc: Nhi Pham <nhi@os.amperecomputing.com>
Cc: Chuong Tran <chuong@os.amperecomputing.com>
Cc: Wenyi Xie <xiewenyi2@huawei.com>
Cc: Peng Xie <xiepeng@phytium.com.cn>
Cc: Ling Jia <jialing@phytium.com.cn>
Cc: Yiqi Shu <shuyiqi@phytium.com.cn>

Ard Biesheuvel (5):
  Platform AARCH64: Drop leftover references to deleted timer PCD
  Platform AARCH64: Remove bogus references to MPCore stack
  Platform/Ampere: Switch to unicore SEC implementation
  Platform/Durian: Switch to unicore SEC implementation
  Platform/HiSilicon/D0x: Switch to unicore SEC implementation

 Platform/ARM/Morello/MorelloPlatform.dsc.inc                |  2 --
 Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                     |  2 --
 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc        |  6 +-----
 Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc               |  1 -
 Platform/AMD/OverdriveBoard/OverdriveBoard.dsc              |  2 --
 Platform/ARM/N1Sdp/N1SdpPlatform.dsc                        |  2 --
 Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc        |  2 --
 Platform/Hisilicon/D03/D03.dsc                              |  3 +--
 Platform/Hisilicon/D05/D05.dsc                              | 10 +---------
 Platform/Hisilicon/D06/D06.dsc                              |  3 +--
 Platform/LeMaker/CelloBoard/CelloBoard.dsc                  |  2 --
 Platform/Phytium/DurianPkg/DurianPkg.dsc                    |  2 +-
 Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc |  2 --
 Platform/Ampere/JadePkg/Jade.fdf                            |  2 +-
 Platform/Hisilicon/D03/D03.fdf                              |  2 +-
 Platform/Hisilicon/D05/D05.fdf                              |  2 +-
 Platform/Hisilicon/D06/D06.fdf                              |  2 +-
 Platform/Phytium/DurianPkg/DurianPkg.fdf                    |  2 +-
 18 files changed, 10 insertions(+), 39 deletions(-)

--
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120115): https://edk2.groups.io/g/devel/message/120115
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* [edk2-devel] [PATCH RFC edk2-platforms 1/5] Platform AARCH64: Drop leftover references to deleted timer PCD
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
@ 2024-07-29 12:22 ` Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack Ard Biesheuvel via groups.io
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz was made obsolete as AArch64
firmware runs in the non-secure world while programming the timer
frequency must be done from the secure world.

Drop some remaining references to the PCD.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc | 1 -
 Platform/Hisilicon/D05/D05.dsc                | 7 -------
 2 files changed, 8 deletions(-)

diff --git a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
index 362b25373490..78cfc0a8089f 100644
--- a/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
+++ b/Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc
@@ -282,7 +282,6 @@ [PcdsFixedAtBuild.common]
   gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0xF022F000
 
   # ARM Architectural Timer Support
-  gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|25000000
   gEmbeddedTokenSpaceGuid.PcdMetronomeTickPeriod|1000
 
   # ARM SBSA Watchdog
diff --git a/Platform/Hisilicon/D05/D05.dsc b/Platform/Hisilicon/D05/D05.dsc
index d247e67e92fc..0231f3188321 100644
--- a/Platform/Hisilicon/D05/D05.dsc
+++ b/Platform/Hisilicon/D05/D05.dsc
@@ -197,13 +197,6 @@ [PcdsFixedAtBuild.common]
   gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x4D100000
   gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0xFE000000
 
-
-  #
-  # ARM Architectual Timer Frequency
-  #
-  gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|50000000
-
-
   gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
 
   gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
-- 
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120110): https://edk2.groups.io/g/devel/message/120110
Mute This Topic: https://groups.io/mt/107628984/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 1/5] Platform AARCH64: Drop leftover references to deleted timer PCD Ard Biesheuvel via groups.io
@ 2024-07-29 12:22 ` Ard Biesheuvel via groups.io
  2024-07-30 19:16   ` Sami Mujawar
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation Ard Biesheuvel via groups.io
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

Remove references to the MPCore stack from platforms that do not use the
MPCore SEC implementations to begin with.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Platform/ARM/Morello/MorelloPlatform.dsc.inc                | 2 --
 Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                     | 2 --
 Platform/AMD/OverdriveBoard/OverdriveBoard.dsc              | 2 --
 Platform/ARM/N1Sdp/N1SdpPlatform.dsc                        | 2 --
 Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc        | 2 --
 Platform/LeMaker/CelloBoard/CelloBoard.dsc                  | 2 --
 Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc | 2 --
 7 files changed, 14 deletions(-)

diff --git a/Platform/ARM/Morello/MorelloPlatform.dsc.inc b/Platform/ARM/Morello/MorelloPlatform.dsc.inc
index d2f885d1c10f..5407185e853c 100644
--- a/Platform/ARM/Morello/MorelloPlatform.dsc.inc
+++ b/Platform/ARM/Morello/MorelloPlatform.dsc.inc
@@ -75,10 +75,8 @@ [PcdsFeatureFlag.common]
 [PcdsFixedAtBuild.common]
   gArmTokenSpaceGuid.PcdVFPEnabled|1
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x80000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x40000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x0
 
   # System Memory (2GB - 16MB)
   gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
index a793e96f8b0f..87dcfbc4ce32 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
+++ b/Platform/ARM/SgiPkg/SgiPlatform.dsc.inc
@@ -134,10 +134,8 @@ [PcdsFixedAtBuild.common]
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x01400000
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x01400000
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x80000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x40000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x0
 
   # ACPI Table Version
   gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiExposedTableVersions|0x20
diff --git a/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc b/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
index 5a1fdb8bfa1f..1778f69ca6a3 100644
--- a/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
+++ b/Platform/AMD/OverdriveBoard/OverdriveBoard.dsc
@@ -354,10 +354,8 @@ [PcdsFixedAtBuild.common]
   # Number of configured cores
   gArmPlatformTokenSpaceGuid.PcdCoreCount|$(NUM_CORES)
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x8001680000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x10000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x800
 
   # Declare system memory base
   gArmTokenSpaceGuid.PcdSystemMemoryBase|0x8000000000
diff --git a/Platform/ARM/N1Sdp/N1SdpPlatform.dsc b/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
index b14ece1b8f61..63e885320651 100644
--- a/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
+++ b/Platform/ARM/N1Sdp/N1SdpPlatform.dsc
@@ -104,10 +104,8 @@ [PcdsFixedAtBuild.common]
   gArmN1SdpTokenSpaceGuid.PcdRamDiskBase|0x88000000
   gArmN1SdpTokenSpaceGuid.PcdRamDiskSize|0x18000000
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x80000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x40000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x0
 
   # System Memory (2GB) - Reserved Secure Memory (16MB)
   gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000
diff --git a/Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc b/Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc
index 60556f6661c4..e1e85b4f2ec2 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc
@@ -132,11 +132,9 @@ [PcdsFixedAtBuild.common]
 
   gArmTokenSpaceGuid.PcdVFPEnabled|1
 
-  # Stacks for MPCores in Normal World
   # Non-Trusted SRAM
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x2E000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x4000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x0
 
   # System Memory
   # When RME is supported by the FVP the top 64MB of DRAM1 (i.e. at the top
diff --git a/Platform/LeMaker/CelloBoard/CelloBoard.dsc b/Platform/LeMaker/CelloBoard/CelloBoard.dsc
index 7b791d1635e9..5f6f42a3bf53 100644
--- a/Platform/LeMaker/CelloBoard/CelloBoard.dsc
+++ b/Platform/LeMaker/CelloBoard/CelloBoard.dsc
@@ -344,10 +344,8 @@ [PcdsFixedAtBuild.common]
   # Number of configured cores
   gArmPlatformTokenSpaceGuid.PcdCoreCount|$(NUM_CORES)
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x8001680000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x10000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x800
 
   # Declare system memory base
   gArmTokenSpaceGuid.PcdSystemMemoryBase|0x8000000000
diff --git a/Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc b/Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc
index 843d18bc746b..adae7e71d3bf 100644
--- a/Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc
+++ b/Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc
@@ -342,10 +342,8 @@ [PcdsFixedAtBuild.common]
   # Number of configured cores
   gArmPlatformTokenSpaceGuid.PcdCoreCount|$(NUM_CORES)
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x8001680000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x10000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x800
 
   # Declare system memory base
   gArmTokenSpaceGuid.PcdSystemMemoryBase|0x8000000000
-- 
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120111): https://edk2.groups.io/g/devel/message/120111
Mute This Topic: https://groups.io/mt/107628985/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 1/5] Platform AARCH64: Drop leftover references to deleted timer PCD Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack Ard Biesheuvel via groups.io
@ 2024-07-29 12:22 ` Ard Biesheuvel via groups.io
  2024-07-31  8:21   ` Nhi Pham via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 4/5] Platform/Durian: " Ard Biesheuvel via groups.io
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

Spec adherent AArch64 systems use PSCI to manage secondary CPUs, and
only enter the execution level where UEFI and the OS live using a single
CPU.

This means using a SEC implementation of the MPCore variety is never
needed, and in practice, those drivers don't work correctly unless an
older version of the GIC is used (v2), which only supports up to 8 CPUs
and is therefore rare on server silicon.

So switch to the UniCore flavor, which should be functionally equivalent
if only a single CPU runs the UEFI firmware.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 6 +-----
 Platform/Ampere/JadePkg/Jade.fdf                     | 2 +-
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc b/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
index 977e4c4c238d..bec743e2c453 100644
--- a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
+++ b/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
@@ -390,12 +390,8 @@ [PcdsFixedAtBuild.common]
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
 
-  #
-  # Stacks for MPCores in Normal World
-  #
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x91100000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x20000
-  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x1000
 
   #
   # Maximum memory region that fits into the 32bit address space
@@ -525,7 +521,7 @@ [Components.common]
   #
   # PEI Phase modules
   #
-  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
     <LibraryClasses>
diff --git a/Platform/Ampere/JadePkg/Jade.fdf b/Platform/Ampere/JadePkg/Jade.fdf
index 127e4401f69b..6d1af3570287 100644
--- a/Platform/Ampere/JadePkg/Jade.fdf
+++ b/Platform/Ampere/JadePkg/Jade.fdf
@@ -148,7 +148,7 @@ [FV.FVMAIN_COMPACT]
   INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
 }
 
-  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF UefiCpuPkg/CpuIoPei/CpuIoPei.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
-- 
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120112): https://edk2.groups.io/g/devel/message/120112
Mute This Topic: https://groups.io/mt/107628986/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [edk2-devel] [PATCH RFC edk2-platforms 4/5] Platform/Durian: Switch to unicore SEC implementation
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
                   ` (2 preceding siblings ...)
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation Ard Biesheuvel via groups.io
@ 2024-07-29 12:22 ` Ard Biesheuvel via groups.io
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 5/5] Platform/HiSilicon/D0x: " Ard Biesheuvel via groups.io
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

Spec adherent AArch64 systems use PSCI to manage secondary CPUs, and
only enter the execution level where UEFI and the OS live using a single
CPU.

This means using a SEC implementation of the MPCore variety is never
needed, and in practice, those drivers don't work correctly unless an
older version of the GIC is used (v2), which only supports up to 8 CPUs
and is therefore rare on server silicon.

So switch to the UniCore flavor, which should be functionally equivalent
if only a single CPU runs the UEFI firmware.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Platform/Phytium/DurianPkg/DurianPkg.dsc | 2 +-
 Platform/Phytium/DurianPkg/DurianPkg.fdf | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Platform/Phytium/DurianPkg/DurianPkg.dsc b/Platform/Phytium/DurianPkg/DurianPkg.dsc
index be5719ec9ee8..1232b5856d6c 100644
--- a/Platform/Phytium/DurianPkg/DurianPkg.dsc
+++ b/Platform/Phytium/DurianPkg/DurianPkg.dsc
@@ -148,7 +148,7 @@ [Components.common]
       OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
   }
 
-  ArmPlatformPkg/PrePi/PeiMPCore.inf {
+  ArmPlatformPkg/PrePi/PeiUniCore.inf {
     <LibraryClasses>
       ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
   }
diff --git a/Platform/Phytium/DurianPkg/DurianPkg.fdf b/Platform/Phytium/DurianPkg/DurianPkg.fdf
index 321356a069f6..95db4ac6f183 100644
--- a/Platform/Phytium/DurianPkg/DurianPkg.fdf
+++ b/Platform/Phytium/DurianPkg/DurianPkg.fdf
@@ -222,7 +222,7 @@ [FV.FVMAIN_COMPACT]
 READ_LOCK_CAP      = TRUE
 READ_LOCK_STATUS   = TRUE
 
-  INF ArmPlatformPkg/PrePi/PeiMPCore.inf
+  INF ArmPlatformPkg/PrePi/PeiUniCore.inf
 
   FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
     SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE {
-- 
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120113): https://edk2.groups.io/g/devel/message/120113
Mute This Topic: https://groups.io/mt/107628987/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [edk2-devel] [PATCH RFC edk2-platforms 5/5] Platform/HiSilicon/D0x: Switch to unicore SEC implementation
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
                   ` (3 preceding siblings ...)
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 4/5] Platform/Durian: " Ard Biesheuvel via groups.io
@ 2024-07-29 12:22 ` Ard Biesheuvel via groups.io
  2024-07-30 12:42 ` [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Leif Lindholm
  2024-07-30 14:18 ` Rebecca Cran via groups.io
  6 siblings, 0 replies; 17+ messages in thread
From: Ard Biesheuvel via groups.io @ 2024-07-29 12:22 UTC (permalink / raw)
  To: devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Nhi Pham,
	Chuong Tran, Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

From: Ard Biesheuvel <ardb@kernel.org>

Spec adherent AArch64 systems use PSCI to manage secondary CPUs, and
only enter the execution level where UEFI and the OS live using a single
CPU.

This means using a SEC implementation of the MPCore variety is never
needed, and in practice, those drivers don't work correctly unless an
older version of the GIC is used (v2), which only supports up to 8 CPUs
and is therefore rare on server silicon.

So switch to the UniCore flavor, which should be functionally equivalent
if only a single CPU runs the UEFI firmware.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 Platform/Hisilicon/D03/D03.dsc | 3 +--
 Platform/Hisilicon/D05/D05.dsc | 3 +--
 Platform/Hisilicon/D06/D06.dsc | 3 +--
 Platform/Hisilicon/D03/D03.fdf | 2 +-
 Platform/Hisilicon/D05/D05.fdf | 2 +-
 Platform/Hisilicon/D06/D06.fdf | 2 +-
 6 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/Platform/Hisilicon/D03/D03.dsc b/Platform/Hisilicon/D03/D03.dsc
index e70dc97ee894..458004830fd8 100644
--- a/Platform/Hisilicon/D03/D03.dsc
+++ b/Platform/Hisilicon/D03/D03.dsc
@@ -128,7 +128,6 @@ [PcdsFixedAtBuild.common]
 
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x81000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0xFF00
 
@@ -283,7 +282,7 @@ [Components.common]
   #
   # PEI Phase modules
   #
-  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
     <LibraryClasses>
diff --git a/Platform/Hisilicon/D05/D05.dsc b/Platform/Hisilicon/D05/D05.dsc
index 0231f3188321..37e826fda3d0 100644
--- a/Platform/Hisilicon/D05/D05.dsc
+++ b/Platform/Hisilicon/D05/D05.dsc
@@ -131,7 +131,6 @@ [PcdsFixedAtBuild.common]
 
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0xE1000000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0xFF00
 
@@ -416,7 +415,7 @@ [Components.common]
   #
   # PEI Phase modules
   #
-  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf
   Platform/Hisilicon/D05/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.inf
diff --git a/Platform/Hisilicon/D06/D06.dsc b/Platform/Hisilicon/D06/D06.dsc
index 6e0fcf633404..2bc7206438f1 100644
--- a/Platform/Hisilicon/D06/D06.dsc
+++ b/Platform/Hisilicon/D06/D06.dsc
@@ -117,7 +117,6 @@ [PcdsFixedAtBuild.common]
   gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
 
 
-  # Stacks for MPCores in Normal World
   gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0xA0E88000
   gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x40000
 
@@ -231,7 +230,7 @@ [Components.common]
   #
   # PEI Phase modules
   #
-  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   MdeModulePkg/Core/Pei/PeiMain.inf
   MdeModulePkg/Universal/PCD/Pei/Pcd.inf
 
diff --git a/Platform/Hisilicon/D03/D03.fdf b/Platform/Hisilicon/D03/D03.fdf
index ac311b915426..0545961d64e3 100644
--- a/Platform/Hisilicon/D03/D03.fdf
+++ b/Platform/Hisilicon/D03/D03.fdf
@@ -303,7 +303,7 @@ [FV.FVMAIN_COMPACT]
 READ_LOCK_CAP      = TRUE
 READ_LOCK_STATUS   = TRUE
 
-  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
 
diff --git a/Platform/Hisilicon/D05/D05.fdf b/Platform/Hisilicon/D05/D05.fdf
index 8e22dd767ebc..547d86ade0ee 100644
--- a/Platform/Hisilicon/D05/D05.fdf
+++ b/Platform/Hisilicon/D05/D05.fdf
@@ -312,7 +312,7 @@ [FV.FVMAIN_COMPACT]
   APRIORI PEI {
     INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf
   }
-  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
 
diff --git a/Platform/Hisilicon/D06/D06.fdf b/Platform/Hisilicon/D06/D06.fdf
index a20540c9dcfc..4d796f6ece2f 100644
--- a/Platform/Hisilicon/D06/D06.fdf
+++ b/Platform/Hisilicon/D06/D06.fdf
@@ -302,7 +302,7 @@ [FV.FVMAIN_COMPACT]
   APRIORI PEI {
     INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf
   }
-  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
+  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
   INF MdeModulePkg/Core/Pei/PeiMain.inf
   INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf
 
-- 
2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120114): https://edk2.groups.io/g/devel/message/120114
Mute This Topic: https://groups.io/mt/107628988/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
                   ` (4 preceding siblings ...)
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 5/5] Platform/HiSilicon/D0x: " Ard Biesheuvel via groups.io
@ 2024-07-30 12:42 ` Leif Lindholm
  2024-07-30 14:30   ` Rebecca Cran
  2024-07-30 14:18 ` Rebecca Cran via groups.io
  6 siblings, 1 reply; 17+ messages in thread
From: Leif Lindholm @ 2024-07-30 12:42 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: devel, Ard Biesheuvel, Rebecca Cran, Nhi Pham, Chuong Tran,
	Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

On Mon, Jul 29, 2024 at 14:22:10 +0200, Ard Biesheuvel wrote:
> From: Ard Biesheuvel <ardb@kernel.org>
> 
> The original EDK2 port to 32-bit ARM supported multi-core but on today's
> ARM systems, only a single CPU enters the non-secure firmware and the
> MPCore drivers are obsolete.
> 
> Stop using them in edk2-platforms so we can remove them entirely from
> edk2.
> 
> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
> Cc: Rebecca Cran <rebecca@os.amperecomputing.com>
> Cc: Nhi Pham <nhi@os.amperecomputing.com>
> Cc: Chuong Tran <chuong@os.amperecomputing.com>
> Cc: Wenyi Xie <xiewenyi2@huawei.com>
> Cc: Peng Xie <xiepeng@phytium.com.cn>
> Cc: Ling Jia <jialing@phytium.com.cn>
> Cc: Yiqi Shu <shuyiqi@phytium.com.cn>

For the series:
Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com>
Thanks!

> Ard Biesheuvel (5):
>   Platform AARCH64: Drop leftover references to deleted timer PCD
>   Platform AARCH64: Remove bogus references to MPCore stack
>   Platform/Ampere: Switch to unicore SEC implementation
>   Platform/Durian: Switch to unicore SEC implementation
>   Platform/HiSilicon/D0x: Switch to unicore SEC implementation
> 
>  Platform/ARM/Morello/MorelloPlatform.dsc.inc                |  2 --
>  Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                     |  2 --
>  Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc        |  6 +-----
>  Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc               |  1 -
>  Platform/AMD/OverdriveBoard/OverdriveBoard.dsc              |  2 --
>  Platform/ARM/N1Sdp/N1SdpPlatform.dsc                        |  2 --
>  Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc        |  2 --
>  Platform/Hisilicon/D03/D03.dsc                              |  3 +--
>  Platform/Hisilicon/D05/D05.dsc                              | 10 +---------
>  Platform/Hisilicon/D06/D06.dsc                              |  3 +--
>  Platform/LeMaker/CelloBoard/CelloBoard.dsc                  |  2 --
>  Platform/Phytium/DurianPkg/DurianPkg.dsc                    |  2 +-
>  Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc |  2 --
>  Platform/Ampere/JadePkg/Jade.fdf                            |  2 +-
>  Platform/Hisilicon/D03/D03.fdf                              |  2 +-
>  Platform/Hisilicon/D05/D05.fdf                              |  2 +-
>  Platform/Hisilicon/D06/D06.fdf                              |  2 +-
>  Platform/Phytium/DurianPkg/DurianPkg.fdf                    |  2 +-
>  18 files changed, 10 insertions(+), 39 deletions(-)
> 
> --
> 2.46.0.rc1.232.g9752f9e123-goog
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120076): https://edk2.groups.io/g/devel/message/120076
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
                   ` (5 preceding siblings ...)
  2024-07-30 12:42 ` [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Leif Lindholm
@ 2024-07-30 14:18 ` Rebecca Cran via groups.io
  2024-07-30 15:48   ` Ard Biesheuvel
  6 siblings, 1 reply; 17+ messages in thread
From: Rebecca Cran via groups.io @ 2024-07-30 14:18 UTC (permalink / raw)
  To: Ard Biesheuvel, devel
  Cc: Ard Biesheuvel, Leif Lindholm, Nhi Pham, Chuong Tran, Wenyi Xie,
	Peng Xie, Ling Jia, Yiqi Shu

For the series:
Reviewed-by: Rebecca Cran <rebecca@os.amperecomputing.com>

I see this is marked as an RFC, but I think it's a change that should be 
committed.

-- 
Rebecca

On 7/29/24 06:22, Ard Biesheuvel wrote:
> From: Ard Biesheuvel <ardb@kernel.org>
> 
> The original EDK2 port to 32-bit ARM supported multi-core but on today's
> ARM systems, only a single CPU enters the non-secure firmware and the
> MPCore drivers are obsolete.
> 
> Stop using them in edk2-platforms so we can remove them entirely from
> edk2.
> 
> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
> Cc: Rebecca Cran <rebecca@os.amperecomputing.com>
> Cc: Nhi Pham <nhi@os.amperecomputing.com>
> Cc: Chuong Tran <chuong@os.amperecomputing.com>
> Cc: Wenyi Xie <xiewenyi2@huawei.com>
> Cc: Peng Xie <xiepeng@phytium.com.cn>
> Cc: Ling Jia <jialing@phytium.com.cn>
> Cc: Yiqi Shu <shuyiqi@phytium.com.cn>
> 
> Ard Biesheuvel (5):
>    Platform AARCH64: Drop leftover references to deleted timer PCD
>    Platform AARCH64: Remove bogus references to MPCore stack
>    Platform/Ampere: Switch to unicore SEC implementation
>    Platform/Durian: Switch to unicore SEC implementation
>    Platform/HiSilicon/D0x: Switch to unicore SEC implementation
> 
>   Platform/ARM/Morello/MorelloPlatform.dsc.inc                |  2 --
>   Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                     |  2 --
>   Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc        |  6 +-----
>   Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc               |  1 -
>   Platform/AMD/OverdriveBoard/OverdriveBoard.dsc              |  2 --
>   Platform/ARM/N1Sdp/N1SdpPlatform.dsc                        |  2 --
>   Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc        |  2 --
>   Platform/Hisilicon/D03/D03.dsc                              |  3 +--
>   Platform/Hisilicon/D05/D05.dsc                              | 10 +---------
>   Platform/Hisilicon/D06/D06.dsc                              |  3 +--
>   Platform/LeMaker/CelloBoard/CelloBoard.dsc                  |  2 --
>   Platform/Phytium/DurianPkg/DurianPkg.dsc                    |  2 +-
>   Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc |  2 --
>   Platform/Ampere/JadePkg/Jade.fdf                            |  2 +-
>   Platform/Hisilicon/D03/D03.fdf                              |  2 +-
>   Platform/Hisilicon/D05/D05.fdf                              |  2 +-
>   Platform/Hisilicon/D06/D06.fdf                              |  2 +-
>   Platform/Phytium/DurianPkg/DurianPkg.fdf                    |  2 +-
>   18 files changed, 10 insertions(+), 39 deletions(-)
> 
> --
> 2.46.0.rc1.232.g9752f9e123-goog



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120078): https://edk2.groups.io/g/devel/message/120078
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 12:42 ` [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Leif Lindholm
@ 2024-07-30 14:30   ` Rebecca Cran
  2024-07-30 14:48     ` Leif Lindholm
  0 siblings, 1 reply; 17+ messages in thread
From: Rebecca Cran @ 2024-07-30 14:30 UTC (permalink / raw)
  To: devel, quic_llindhol, Ard Biesheuvel
  Cc: Ard Biesheuvel, Rebecca Cran, Nhi Pham, Chuong Tran, Wenyi Xie,
	Peng Xie, Ling Jia, Yiqi Shu

Ard,


It looks like your original message didn't make it through to the list.

I don't see it on https://edk2.groups.io/g/devel/messages or in my 
personal email client.


-- 
Rebecca


On 7/30/24 6:42 AM, Leif Lindholm wrote:
> On Mon, Jul 29, 2024 at 14:22:10 +0200, Ard Biesheuvel wrote:
>> From: Ard Biesheuvel <ardb@kernel.org>
>>
>> The original EDK2 port to 32-bit ARM supported multi-core but on today's
>> ARM systems, only a single CPU enters the non-secure firmware and the
>> MPCore drivers are obsolete.
>>
>> Stop using them in edk2-platforms so we can remove them entirely from
>> edk2.
>>
>> Cc: Leif Lindholm <quic_llindhol@quicinc.com>
>> Cc: Rebecca Cran <rebecca@os.amperecomputing.com>
>> Cc: Nhi Pham <nhi@os.amperecomputing.com>
>> Cc: Chuong Tran <chuong@os.amperecomputing.com>
>> Cc: Wenyi Xie <xiewenyi2@huawei.com>
>> Cc: Peng Xie <xiepeng@phytium.com.cn>
>> Cc: Ling Jia <jialing@phytium.com.cn>
>> Cc: Yiqi Shu <shuyiqi@phytium.com.cn>
> For the series:
> Reviewed-by: Leif Lindholm <quic_llindhol@quicinc.com>
> Thanks!
>
>> Ard Biesheuvel (5):
>>    Platform AARCH64: Drop leftover references to deleted timer PCD
>>    Platform AARCH64: Remove bogus references to MPCore stack
>>    Platform/Ampere: Switch to unicore SEC implementation
>>    Platform/Durian: Switch to unicore SEC implementation
>>    Platform/HiSilicon/D0x: Switch to unicore SEC implementation
>>
>>   Platform/ARM/Morello/MorelloPlatform.dsc.inc                |  2 --
>>   Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                     |  2 --
>>   Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc        |  6 +-----
>>   Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc               |  1 -
>>   Platform/AMD/OverdriveBoard/OverdriveBoard.dsc              |  2 --
>>   Platform/ARM/N1Sdp/N1SdpPlatform.dsc                        |  2 --
>>   Platform/ARM/VExpressPkg/ArmVExpress-FVP-AArch64.dsc        |  2 --
>>   Platform/Hisilicon/D03/D03.dsc                              |  3 +--
>>   Platform/Hisilicon/D05/D05.dsc                              | 10 +---------
>>   Platform/Hisilicon/D06/D06.dsc                              |  3 +--
>>   Platform/LeMaker/CelloBoard/CelloBoard.dsc                  |  2 --
>>   Platform/Phytium/DurianPkg/DurianPkg.dsc                    |  2 +-
>>   Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc |  2 --
>>   Platform/Ampere/JadePkg/Jade.fdf                            |  2 +-
>>   Platform/Hisilicon/D03/D03.fdf                              |  2 +-
>>   Platform/Hisilicon/D05/D05.fdf                              |  2 +-
>>   Platform/Hisilicon/D06/D06.fdf                              |  2 +-
>>   Platform/Phytium/DurianPkg/DurianPkg.fdf                    |  2 +-
>>   18 files changed, 10 insertions(+), 39 deletions(-)
>>
>> --
>> 2.46.0.rc1.232.g9752f9e123-goog
>>
>
> 
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120079): https://edk2.groups.io/g/devel/message/120079
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 14:30   ` Rebecca Cran
@ 2024-07-30 14:48     ` Leif Lindholm
  2024-07-30 15:00       ` Ard Biesheuvel
  0 siblings, 1 reply; 17+ messages in thread
From: Leif Lindholm @ 2024-07-30 14:48 UTC (permalink / raw)
  To: Rebecca Cran, devel, Ard Biesheuvel; +Cc: Ard Biesheuvel

On 2024-07-30 15:30, Rebecca Cran wrote:
> Ard,
> 
> 
> It looks like your original message didn't make it through to the list.
> 
> I don't see it on https://edk2.groups.io/g/devel/messages or in my 
> personal email client.

Huh, indeed.

groups.io seems upset that google's email setup has enabled some new 
form of ... something... Everything gets stuck in moderation with unique 
generated Return-Path ending in ardb.bounces.google.com
I.e. for this specific email:

Return-Path: 
3gImnZggKDW0LcOM+RTeRZZRWP.NZXbfTN_WWTYOSZWbfTNTYN.NZX@flex--ardb.bounces.google.com

Ard, can you look into what they're smoking over there?

/
     Leif



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120080): https://edk2.groups.io/g/devel/message/120080
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 14:48     ` Leif Lindholm
@ 2024-07-30 15:00       ` Ard Biesheuvel
  2024-07-30 15:09         ` Leif Lindholm
  0 siblings, 1 reply; 17+ messages in thread
From: Ard Biesheuvel @ 2024-07-30 15:00 UTC (permalink / raw)
  To: devel, quic_llindhol; +Cc: Rebecca Cran

On Tue, 30 Jul 2024 at 16:49, Leif Lindholm <quic_llindhol@quicinc.com> wrote:
>
> On 2024-07-30 15:30, Rebecca Cran wrote:
> > Ard,
> >
> >
> > It looks like your original message didn't make it through to the list.
> >
> > I don't see it on https://edk2.groups.io/g/devel/messages or in my
> > personal email client.
>
> Huh, indeed.
>
> groups.io seems upset that google's email setup has enabled some new
> form of ... something... Everything gets stuck in moderation with unique
> generated Return-Path ending in ardb.bounces.google.com
> I.e. for this specific email:
>
> Return-Path:
> 3gImnZggKDW0LcOM+RTeRZZRWP.NZXbfTN_WWTYOSZWbfTNTYN.NZX@flex--ardb.bounces.google.com
>
> Ard, can you look into what they're smoking over there?
>

I probably need to subscribe ardb+git@google.com to the mailing list,
which is the from" address when I send patches from my google dev
machine.

I am not going to bother with that, though, as we'll soon switch to
github for edk2-platforms. In the mean time, I can use another machine
to send out patches if needed.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120081): https://edk2.groups.io/g/devel/message/120081
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 15:00       ` Ard Biesheuvel
@ 2024-07-30 15:09         ` Leif Lindholm
  2024-07-30 15:18           ` Ard Biesheuvel
  0 siblings, 1 reply; 17+ messages in thread
From: Leif Lindholm @ 2024-07-30 15:09 UTC (permalink / raw)
  To: devel, ardb; +Cc: Rebecca Cran

On 2024-07-30 16:00, Ard Biesheuvel wrote:
> On Tue, 30 Jul 2024 at 16:49, Leif Lindholm <quic_llindhol@quicinc.com> wrote:
>>
>> On 2024-07-30 15:30, Rebecca Cran wrote:
>>> Ard,
>>>
>>>
>>> It looks like your original message didn't make it through to the list.
>>>
>>> I don't see it on https://edk2.groups.io/g/devel/messages or in my
>>> personal email client.
>>
>> Huh, indeed.
>>
>> groups.io seems upset that google's email setup has enabled some new
>> form of ... something... Everything gets stuck in moderation with unique
>> generated Return-Path ending in ardb.bounces.google.com
>> I.e. for this specific email:
>>
>> Return-Path:
>> 3gImnZggKDW0LcOM+RTeRZZRWP.NZXbfTN_WWTYOSZWbfTNTYN.NZX@flex--ardb.bounces.google.com
>>
>> Ard, can you look into what they're smoking over there?
>>

*swizzling your response around*

 > I am not going to bother with that, though, as we'll soon switch to
 > github for edk2-platforms. In the mean time, I can use another machine
 > to send out patches if needed.

Sure, that works for me.
I've released the stuck messages.

> I probably need to subscribe ardb+git@google.com to the mailing list,
> which is the from" address when I send patches from my google dev
> machine.

To be clear though, in the moderation system every single one of your 
emails of the last few days are stuck with a different, obnoxious, email 
address as the sender. It's not ardb+git@google.com.

/
     Leif

> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120117): https://edk2.groups.io/g/devel/message/120117
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 15:09         ` Leif Lindholm
@ 2024-07-30 15:18           ` Ard Biesheuvel
  2024-07-30 15:34             ` Leif Lindholm
  0 siblings, 1 reply; 17+ messages in thread
From: Ard Biesheuvel @ 2024-07-30 15:18 UTC (permalink / raw)
  To: devel, quic_llindhol; +Cc: Rebecca Cran

On Tue, 30 Jul 2024 at 17:09, Leif Lindholm <quic_llindhol@quicinc.com> wrote:
>
> On 2024-07-30 16:00, Ard Biesheuvel wrote:
> > On Tue, 30 Jul 2024 at 16:49, Leif Lindholm <quic_llindhol@quicinc.com> wrote:
> >>
> >> On 2024-07-30 15:30, Rebecca Cran wrote:
> >>> Ard,
> >>>
> >>>
> >>> It looks like your original message didn't make it through to the list.
> >>>
> >>> I don't see it on https://edk2.groups.io/g/devel/messages or in my
> >>> personal email client.
> >>
> >> Huh, indeed.
> >>
> >> groups.io seems upset that google's email setup has enabled some new
> >> form of ... something... Everything gets stuck in moderation with unique
> >> generated Return-Path ending in ardb.bounces.google.com
> >> I.e. for this specific email:
> >>
> >> Return-Path:
> >> 3gImnZggKDW0LcOM+RTeRZZRWP.NZXbfTN_WWTYOSZWbfTNTYN.NZX@flex--ardb.bounces.google.com
> >>
> >> Ard, can you look into what they're smoking over there?
> >>
>
> *swizzling your response around*
>
>  > I am not going to bother with that, though, as we'll soon switch to
>  > github for edk2-platforms. In the mean time, I can use another machine
>  > to send out patches if needed.
>
> Sure, that works for me.
> I've released the stuck messages.
>
> > I probably need to subscribe ardb+git@google.com to the mailing list,
> > which is the from" address when I send patches from my google dev
> > machine.
>
> To be clear though, in the moderation system every single one of your
> emails of the last few days are stuck with a different, obnoxious, email
> address as the sender. It's not ardb+git@google.com.
>

flex is an internal service to handle outgoing email, and I am using
the internal git send-email helper built on top of that. I am not
aware of any recent changes that would have provoked a change in
behavior, and I see the same type of return paths on outgoing emails
sent a year ago.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120118): https://edk2.groups.io/g/devel/message/120118
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 15:18           ` Ard Biesheuvel
@ 2024-07-30 15:34             ` Leif Lindholm
  0 siblings, 0 replies; 17+ messages in thread
From: Leif Lindholm @ 2024-07-30 15:34 UTC (permalink / raw)
  To: Ard Biesheuvel, devel; +Cc: Rebecca Cran

On 2024-07-30 16:18, Ard Biesheuvel wrote:

>> Sure, that works for me.
>> I've released the stuck messages.
>>
>>> I probably need to subscribe ardb+git@google.com to the mailing list,
>>> which is the from" address when I send patches from my google dev
>>> machine.
>>
>> To be clear though, in the moderation system every single one of your
>> emails of the last few days are stuck with a different, obnoxious, email
>> address as the sender. It's not ardb+git@google.com.
>>
> 
> flex is an internal service to handle outgoing email, and I am using
> the internal git send-email helper built on top of that. I am not
> aware of any recent changes that would have provoked a change in
> behavior, and I see the same type of return paths on outgoing emails
> sent a year ago.

If that's true, then someone much more diligent than me has been 
manually releasing every patch you've sent, *or* something changed on 
the groups.io side recently.

/
     Leif



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120119): https://edk2.groups.io/g/devel/message/120119
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers
  2024-07-30 14:18 ` Rebecca Cran via groups.io
@ 2024-07-30 15:48   ` Ard Biesheuvel
  0 siblings, 0 replies; 17+ messages in thread
From: Ard Biesheuvel @ 2024-07-30 15:48 UTC (permalink / raw)
  To: Rebecca Cran
  Cc: devel, Leif Lindholm, Nhi Pham, Chuong Tran, Wenyi Xie, Peng Xie,
	Ling Jia, Yiqi Shu

On Tue, 30 Jul 2024 at 16:19, Rebecca Cran
<rebecca@os.amperecomputing.com> wrote:
>
> For the series:
> Reviewed-by: Rebecca Cran <rebecca@os.amperecomputing.com>
>
> I see this is marked as an RFC, but I think it's a change that should be
> committed.
>

Thanks. I agree.

I will wait for at least your colleagues to give a tested-by on this
though - Altra/Jade uses the ArmMpCore PPI and HOB to populate the
SRAT table, and while this functionality should not be affected at all
by this series, it would be nice to get confirmation of that.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120122): https://edk2.groups.io/g/devel/message/120122
Mute This Topic: https://groups.io/mt/107626521/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack Ard Biesheuvel via groups.io
@ 2024-07-30 19:16   ` Sami Mujawar
  0 siblings, 0 replies; 17+ messages in thread
From: Sami Mujawar @ 2024-07-30 19:16 UTC (permalink / raw)
  To: Ard Biesheuvel, devel

[-- Attachment #1: Type: text/plain, Size: 518 bytes --]

Hi Ard,

Thank you for this patch.

These changes look good to me.

Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>

Regards,

Sami Mujawar


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120132): https://edk2.groups.io/g/devel/message/120132
Mute This Topic: https://groups.io/mt/107628985/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



[-- Attachment #2: Type: text/html, Size: 1087 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation
  2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation Ard Biesheuvel via groups.io
@ 2024-07-31  8:21   ` Nhi Pham via groups.io
  0 siblings, 0 replies; 17+ messages in thread
From: Nhi Pham via groups.io @ 2024-07-31  8:21 UTC (permalink / raw)
  To: Ard Biesheuvel, devel
  Cc: Ard Biesheuvel, Leif Lindholm, Rebecca Cran, Chuong Tran,
	Wenyi Xie, Peng Xie, Ling Jia, Yiqi Shu

Thanks Ard for the clean up and maintaining the platforms's updates.

Reviewed-by: Nhi Pham <nhi@os.amperecomputing.com>
Tested-by: Nhi Pham <nhi@os.amperecomputing.com>

Regards,
Nhi

On 7/29/2024 7:22 PM, Ard Biesheuvel wrote:
> From: Ard Biesheuvel <ardb@kernel.org>
> 
> Spec adherent AArch64 systems use PSCI to manage secondary CPUs, and
> only enter the execution level where UEFI and the OS live using a single
> CPU.
> 
> This means using a SEC implementation of the MPCore variety is never
> needed, and in practice, those drivers don't work correctly unless an
> older version of the GIC is used (v2), which only supports up to 8 CPUs
> and is therefore rare on server silicon.
> 
> So switch to the UniCore flavor, which should be functionally equivalent
> if only a single CPU runs the UEFI firmware.
> 
> Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
> ---
>   Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc | 6 +-----
>   Platform/Ampere/JadePkg/Jade.fdf                     | 2 +-
>   2 files changed, 2 insertions(+), 6 deletions(-)
> 
> diff --git a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc b/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
> index 977e4c4c238d..bec743e2c453 100644
> --- a/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
> +++ b/Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc
> @@ -390,12 +390,8 @@ [PcdsFixedAtBuild.common]
>     gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
>     gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
>   
> -  #
> -  # Stacks for MPCores in Normal World
> -  #
>     gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x91100000
>     gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x20000
> -  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x1000
>   
>     #
>     # Maximum memory region that fits into the 32bit address space
> @@ -525,7 +521,7 @@ [Components.common]
>     #
>     # PEI Phase modules
>     #
> -  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
> +  ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
>     MdeModulePkg/Core/Pei/PeiMain.inf
>     MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
>       <LibraryClasses>
> diff --git a/Platform/Ampere/JadePkg/Jade.fdf b/Platform/Ampere/JadePkg/Jade.fdf
> index 127e4401f69b..6d1af3570287 100644
> --- a/Platform/Ampere/JadePkg/Jade.fdf
> +++ b/Platform/Ampere/JadePkg/Jade.fdf
> @@ -148,7 +148,7 @@ [FV.FVMAIN_COMPACT]
>     INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>   }
>   
> -  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
> +  INF ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf
>     INF MdeModulePkg/Core/Pei/PeiMain.inf
>     INF UefiCpuPkg/CpuIoPei/CpuIoPei.inf
>     INF ArmPlatformPkg/PlatformPei/PlatformPeim.inf


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120136): https://edk2.groups.io/g/devel/message/120136
Mute This Topic: https://groups.io/mt/107628986/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-07-31  8:21 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-29 12:22 [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Ard Biesheuvel via groups.io
2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 1/5] Platform AARCH64: Drop leftover references to deleted timer PCD Ard Biesheuvel via groups.io
2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 2/5] Platform AARCH64: Remove bogus references to MPCore stack Ard Biesheuvel via groups.io
2024-07-30 19:16   ` Sami Mujawar
2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 3/5] Platform/Ampere: Switch to unicore SEC implementation Ard Biesheuvel via groups.io
2024-07-31  8:21   ` Nhi Pham via groups.io
2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 4/5] Platform/Durian: " Ard Biesheuvel via groups.io
2024-07-29 12:22 ` [edk2-devel] [PATCH RFC edk2-platforms 5/5] Platform/HiSilicon/D0x: " Ard Biesheuvel via groups.io
2024-07-30 12:42 ` [edk2-devel] [PATCH RFC edk2-platforms 0/5] Phase out MPCore SEC drivers Leif Lindholm
2024-07-30 14:30   ` Rebecca Cran
2024-07-30 14:48     ` Leif Lindholm
2024-07-30 15:00       ` Ard Biesheuvel
2024-07-30 15:09         ` Leif Lindholm
2024-07-30 15:18           ` Ard Biesheuvel
2024-07-30 15:34             ` Leif Lindholm
2024-07-30 14:18 ` Rebecca Cran via groups.io
2024-07-30 15:48   ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox