Просмотр исходного кода

Platform/RPi4: Add EFI_MP_SERVICES_PROTOCOL support

Fix the ARM_MPCORE_INFO table and incorporate the DXE driver and test
app to the build so that EFI_MP_SERVICES_PROTOCOL can be used and tested
on Raspberry Pi 4. Note that the test app is not added to the image - it
can be taken from the build directory and executed from the UEFI shell.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Rebecca Cran <rebecca@quicinc.com>
Ard Biesheuvel 1 год назад
Родитель
Сommit
0540e1a244

+ 4 - 4
Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c

@@ -51,10 +51,10 @@ ArmPlatformInitializeSystemMemory (
 }
 
 STATIC ARM_CORE_INFO mRpi3InfoTable[] = {
-  { 0x0, 0x0, },             // Cluster 0, Core 0
-  { 0x0, 0x1, },             // Cluster 0, Core 1
-  { 0x0, 0x2, },             // Cluster 0, Core 2
-  { 0x0, 0x3, },             // Cluster 0, Core 3
+  { 0x0, }, // Cluster 0, Core 0
+  { 0x1, }, // Cluster 0, Core 1
+  { 0x2, }, // Cluster 0, Core 2
+  { 0x3, }, // Cluster 0, Core 3
 };
 
 STATIC

+ 3 - 0
Platform/RaspberryPi/RPi4/RPi4.dsc

@@ -795,3 +795,6 @@
       gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
   }
 !endif
+
+  ArmPkg/Drivers/ArmPsciMpServicesDxe/ArmPsciMpServicesDxe.inf
+  MdeModulePkg/Application/MpServicesTest/MpServicesTest.inf

+ 1 - 0
Platform/RaspberryPi/RPi4/RPi4.fdf

@@ -198,6 +198,7 @@ READ_LOCK_STATUS   = TRUE
   INF EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
   INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
   INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
+  INF ArmPkg/Drivers/ArmPsciMpServicesDxe/ArmPsciMpServicesDxe.inf
 
   #
   # Multiple Console IO support