[edk2-devel] [PATCH edk2-platforms] Platform/RPi4: Add EFI_MP_SERVICES_PROTOCOL support

Ard Biesheuvel posted 1 patch 1 year, 3 months ago
Failed in applying to current master (apply log)
Platform/RaspberryPi/RPi4/RPi4.dsc                     | 3 +++
Platform/RaspberryPi/RPi4/RPi4.fdf                     | 1 +
Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c | 8 ++++----
3 files changed, 8 insertions(+), 4 deletions(-)
[edk2-devel] [PATCH edk2-platforms] Platform/RPi4: Add EFI_MP_SERVICES_PROTOCOL support
Posted by Ard Biesheuvel 1 year, 3 months ago
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>
---
 Platform/RaspberryPi/RPi4/RPi4.dsc                     | 3 +++
 Platform/RaspberryPi/RPi4/RPi4.fdf                     | 1 +
 Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c | 8 ++++----
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/Platform/RaspberryPi/RPi4/RPi4.dsc b/Platform/RaspberryPi/RPi4/RPi4.dsc
index 8ba0ca61851e..4b2b6d1e4b97 100644
--- a/Platform/RaspberryPi/RPi4/RPi4.dsc
+++ b/Platform/RaspberryPi/RPi4/RPi4.dsc
@@ -795,3 +795,6 @@ [Components.common]
       gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
   }
 !endif
+
+  ArmPkg/Drivers/ArmPsciMpServicesDxe/ArmPsciMpServicesDxe.inf
+  MdeModulePkg/Application/MpServicesTest/MpServicesTest.inf
diff --git a/Platform/RaspberryPi/RPi4/RPi4.fdf b/Platform/RaspberryPi/RPi4/RPi4.fdf
index 0c782d2f3553..816927761513 100644
--- a/Platform/RaspberryPi/RPi4/RPi4.fdf
+++ b/Platform/RaspberryPi/RPi4/RPi4.fdf
@@ -198,6 +198,7 @@ [FV.FvMain]
   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
diff --git a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c b/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
index f032f3c79238..0b0943431889 100644
--- a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
+++ b/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
-- 
2.39.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98027): https://edk2.groups.io/g/devel/message/98027
Mute This Topic: https://groups.io/mt/96075997/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH edk2-platforms] Platform/RPi4: Add EFI_MP_SERVICES_PROTOCOL support
Posted by Rebecca Cran 1 year, 3 months ago
Reviewed-by: Rebecca Cran <rebecca@quicinc.com>

-- 
Rebecca Cran

On 1/5/23 10:01, Ard Biesheuvel wrote:
> 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>
> ---
>   Platform/RaspberryPi/RPi4/RPi4.dsc                     | 3 +++
>   Platform/RaspberryPi/RPi4/RPi4.fdf                     | 1 +
>   Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c | 8 ++++----
>   3 files changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/Platform/RaspberryPi/RPi4/RPi4.dsc b/Platform/RaspberryPi/RPi4/RPi4.dsc
> index 8ba0ca61851e..4b2b6d1e4b97 100644
> --- a/Platform/RaspberryPi/RPi4/RPi4.dsc
> +++ b/Platform/RaspberryPi/RPi4/RPi4.dsc
> @@ -795,3 +795,6 @@ [Components.common]
>         gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
>     }
>   !endif
> +
> +  ArmPkg/Drivers/ArmPsciMpServicesDxe/ArmPsciMpServicesDxe.inf
> +  MdeModulePkg/Application/MpServicesTest/MpServicesTest.inf
> diff --git a/Platform/RaspberryPi/RPi4/RPi4.fdf b/Platform/RaspberryPi/RPi4/RPi4.fdf
> index 0c782d2f3553..816927761513 100644
> --- a/Platform/RaspberryPi/RPi4/RPi4.fdf
> +++ b/Platform/RaspberryPi/RPi4/RPi4.fdf
> @@ -198,6 +198,7 @@ [FV.FvMain]
>     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
> diff --git a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c b/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
> index f032f3c79238..0b0943431889 100644
> --- a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
> +++ b/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


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98136): https://edk2.groups.io/g/devel/message/98136
Mute This Topic: https://groups.io/mt/96075997/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH edk2-platforms] Platform/RPi4: Add EFI_MP_SERVICES_PROTOCOL support
Posted by Laszlo Ersek 1 year, 3 months ago
On 1/5/23 18:01, Ard Biesheuvel wrote:
> 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>
> ---
>  Platform/RaspberryPi/RPi4/RPi4.dsc                     | 3 +++
>  Platform/RaspberryPi/RPi4/RPi4.fdf                     | 1 +
>  Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c | 8 ++++----
>  3 files changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/Platform/RaspberryPi/RPi4/RPi4.dsc b/Platform/RaspberryPi/RPi4/RPi4.dsc
> index 8ba0ca61851e..4b2b6d1e4b97 100644
> --- a/Platform/RaspberryPi/RPi4/RPi4.dsc
> +++ b/Platform/RaspberryPi/RPi4/RPi4.dsc
> @@ -795,3 +795,6 @@ [Components.common]
>        gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
>    }
>  !endif
> +
> +  ArmPkg/Drivers/ArmPsciMpServicesDxe/ArmPsciMpServicesDxe.inf
> +  MdeModulePkg/Application/MpServicesTest/MpServicesTest.inf
> diff --git a/Platform/RaspberryPi/RPi4/RPi4.fdf b/Platform/RaspberryPi/RPi4/RPi4.fdf
> index 0c782d2f3553..816927761513 100644
> --- a/Platform/RaspberryPi/RPi4/RPi4.fdf
> +++ b/Platform/RaspberryPi/RPi4/RPi4.fdf
> @@ -198,6 +198,7 @@ [FV.FvMain]
>    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
> diff --git a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c b/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
> index f032f3c79238..0b0943431889 100644
> --- a/Platform/RaspberryPi/Library/PlatformLib/RaspberryPi.c
> +++ b/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

Acked-by: Laszlo Ersek <lersek@redhat.com>



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98071): https://edk2.groups.io/g/devel/message/98071
Mute This Topic: https://groups.io/mt/96075997/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-