Hi Rebecca,

 

Please find my response inline marked [SAMI].

 

Regards,

 

Sami Mujawar

 

From: Ard Biesheuvel <ardb@kernel.org>
Date: Sunday, 30 January 2022 at 11:01
To: Rebecca Cran <rebecca@nuviainc.com>
Cc: edk2-devel-groups-io <devel@edk2.groups.io>, Ard Biesheuvel <ardb+tianocore@kernel.org>, Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>, Leif Lindholm <leif@nuviainc.com>, Sami Mujawar <Sami.Mujawar@arm.com>, Wenyi Xie <xiewenyi2@huawei.com>, Peng Xie <xiepeng@phytium.com.cn>, Ling Jia <jialing@phytium.com.cn>, Yiqi Shu <shuyiqi@phytium.com.cn>, Nhi Pham <nhi@os.amperecomputing.com>, Vu Nguyen <vunguyen@os.amperecomputing.com>, Thang Nguyen <thang@os.amperecomputing.com>, Chuong Tran <chuong@os.amperecomputing.com>, Pete Batard <pete@akeo.ie>, Masami Hiramatsu <masami.hiramatsu@linaro.org>, Graeme Gregory <graeme@nuviainc.com>, Radoslaw Biernacki <rad@semihalf.com>, Marcin Wojtas <mw@semihalf.com>
Subject: Re: [PATCH v2 00/17] Update Arm platforms following addition of EFI_MP_SERVICES_PROTOCOL support in edk2

On Thu, 16 Dec 2021 at 23:08, Rebecca Cran <rebecca@nuviainc.com> wrote:
>
> Changes from v1:
>
> Fixed Platform/SoftIron, Platform/RaspberryPi, Silicon/AMD,
> Silicon/Ampere, Silicon/Phytium, Silicon/Hisilicon.
>
> Patches 1/17 through 8/17 are the same as v1.
>
> --------
>
> The following platforms are already broken:
>
> o Drivers/OptionRomPkg/OptionRomPkg.dsc for AARCH64 and ARM: due to OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf.
>
> o Features/Ext4Pkg/Ext4Pkg.dsc for ARM: edk2-platforms/Features/Ext4Pkg/Ext4Dxe/Inode.c:341: undefined reference to `__aeabi_uidivmod')
>
> o Platform/ARM/SgiPkg/RdN1Edge/RdN1Edge.dsc for ARM
>
> o Platform/Hisilicon/{D03,D05,D06} for AARCH64: Platform/Hisilicon/D03/Library/OemMiscLib2P/BoardFeature2PHi1610.c:50:18: error: ‘EmHilink0Hccs1X8Width16’ undeclared here (not in a function))
>
> o Silicon/Marvell/Armada7k8k/Armada7k8kCapsule.dscfor AARCH64 and ARM: error C0DE: Unknown fatal error when processing [Silicon/Marvell/Armada7k8k/Armada7k8kCapsule.dsc]
>
> o Platform/ARM/SgiPkg/RdE1Edge/RdE1Edge.dsc for ARM.
>
> o Platform/ARM/SgiPkg/RdN1EdgeX2/RdN1EdgeX2.dsc for ARM.
>
> o Platform/ARM/SgiPkg/RdN2/RdN2.dsc for ARM.
>
> o Platform/ARM/SgiPkg/RdV1/RdV1.dsc for ARM.
>
> o Platform/ARM/SgiPkg/RdV1Mc/RdV1Mc.dsc for ARM.
>
> o Platform/ARM/SgiPkg/Sgi575/Sgi575.dsc for ARM.

 

[SAMI] Thank you for reporting this issue. The firmware for Sgi platforms does not support AARCH32 and we will provide patches to disable this in the platform workspace files.

[/SAMI]


>
> o Platform/Comcast/RDKQemu/RDKQemu.dsc for AARCH64 and ARM due to ACPI
> issue.
>
> o Platform/Marvell/Cn913xDb/Cn913xDbA.dsc for AARCH64 and ARM: tries to
> use literal $(PLATFORM_NAME).
>
> o Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc for AARCH64
> and ARM: VariablePolicyHelperLib issue.
>
> o Platform/SolidRun/Cn913xCEx7Eval/Cn913xCEx7Eval.dsc for AARCH64 and ARM:
> T91 not found.
>
> --------
>
> This patch series depends on the "Add EFI_MP_SERVICES_PROTOCOL support
> for AARCH64" series which is in the process of being reviewed.
>
> With the addition of EFI_MP_SERVICES_PROTOCOL support for Arm, consumers
> of ArmPkg/Drivers/CpuDxe now need an instance of MpInitLib. This series
> adds ArmPkg/Library/MpInitLib/DxeMpInitLib.inf.
>
> Also, the ARM_CORE_INFO struct has changed so there's now an MPIDR field
> where there were previously separate cluster and core fields. This
> series updates the initializers and other code for the various instances.
>

I have pushed the ones that update the uses of ARM_CORE_INFO. The
remaining ones are hopefully unneeded if we make the MP services
protocol a separate driver.


>
> Rebecca Cran (17):
>   Platform/ARM: Add MpInitLib instance
>   Platform/Socionext: Add instance of MpInitLib
>   Silicon/Marvell: Add instance of MpInitLib
>   Platform/Qemu: Add instance of MpInitLib
>   Platform/ARM: Update ARM_CORE_INFO initializer for MPIDR field change
>   Silicon/Marvell: Update ARM_CORE_INFO initializer for MPIDR field
>     change
>   Silicon/Socionext: Update ARM_CORE_INFO initializer for MPIDR field
>     change
>   Silicon/Qemu: Update ARM_CORE_INFO initializer for MPIDR field change
>   Platform/AMD: Add instance of MpInitLib to OverdriveBoard.dsc
>   Platform/SoftIron: Add instance of MpInitLib to Overdrive1000Board.dsc
>   Platform/RaspberryPi: Add instance of MpInitLib to RPi3.dsc and
>     RPi4.dsc
>   Silicon/AMD: Update Styx code to work with changes ARM_CORE_INFO
>     struct
>   Silicon/Ampere: Add instance of MpInitLib to AmpereAltraPkg.dsc
>   Silicon/Ampere: Update ArmPlatformLib to work with changed
>     ARM_CORE_INFO
>   Silicon/Phytium: Add instance of MpInitLib to PhytiumCommonPkg.dsc.inf
>   Silicon/Phytium: Update FT2000-4Pkg PlatformLib for ARM_CORE_INFO
>     change
>   Silicon/Hisilicon: Add instance of MpInitLib to Hisilicon.dsc.inc
>
>  Platform/AMD/OverdriveBoard/OverdriveBoard.dsc                        |  1 +
>  Platform/ARM/JunoPkg/ArmJuno.dsc                                      |  1 +
>  Platform/ARM/JunoPkg/Library/ArmJunoLib/ArmJuno.c                     | 12 ++---
>  Platform/ARM/Morello/MorelloPlatform.dsc.inc                          |  1 +
>  Platform/ARM/N1Sdp/N1SdpPlatform.dsc                                  |  1 +
>  Platform/ARM/SgiPkg/SgiPlatform.dsc.inc                               |  1 +
>  Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc                          |  1 +
>  Platform/ARM/VExpressPkg/Library/ArmVExpressLibCTA15-A7/CTA15-A7.c    | 16 +++----
>  Platform/ARM/VExpressPkg/Library/ArmVExpressLibRTSM/RTSM.c            | 16 +++----
>  Platform/Qemu/SbsaQemu/SbsaQemu.dsc                                   |  1 +
>  Platform/RaspberryPi/RPi3/RPi3.dsc                                    |  1 +
>  Platform/RaspberryPi/RPi4/RPi4.dsc                                    |  1 +
>  Platform/Socionext/DeveloperBox/DeveloperBox.dsc                      |  1 +
>  Platform/Socionext/SynQuacerEvalBoard/SynQuacerEvalBoard.dsc          |  1 +
>  Platform/SoftIron/Overdrive1000Board/Overdrive1000Board.dsc           |  1 +
>  Silicon/AMD/Styx/Drivers/AcpiPlatformDxe/AcpiPlatform.c               |  3 +-
>  Silicon/AMD/Styx/Drivers/PlatInitPei/PlatInitPei.c                    |  8 ++--
>  Silicon/AMD/Styx/Library/StyxDtbLoaderLib/StyxDtbLoaderLib.c          | 22 ++++-----
>  Silicon/Ampere/AmpereAltraPkg/AmpereAltraPkg.dsc.inc                  |  1 +
>  Silicon/Ampere/AmpereAltraPkg/Library/ArmPlatformLib/ArmPlatformLib.c |  5 +-
>  Silicon/Hisilicon/Hisilicon.dsc.inc                                   |  1 +
>  Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc                         |  1 +
>  Silicon/Marvell/Armada7k8k/Library/Armada7k8kLib/Armada7k8kLib.c      |  8 ++--
>  Silicon/Phytium/FT2000-4Pkg/Library/PlatformLib/PlatformLib.c         |  2 +-
>  Silicon/Phytium/PhytiumCommonPkg/PhytiumCommonPkg.dsc.inc             |  1 +
>  Silicon/Qemu/SbsaQemu/Library/SbsaQemuLib/SbsaQemuLib.c               |  8 ++--
>  Silicon/Socionext/SynQuacer/Library/SynQuacerLib/SynQuacer.c          | 48 ++++++++++----------
>  27 files changed, 88 insertions(+), 76 deletions(-)
>
> --
> 2.31.1
>