This is an update to my original series titled:
[PATCH 0/2] ArmPlatformPkg: Remove FVP and Juno
ARM Ltd Platform support is migrating to use OpenPlatformPkg [1].
Currently, TC2, Juno and FVP exist both in EDK2's ArmPlatformPkg and in
OpenPlatformPkg. And they are starting to diverge, with
OpenPlatformPkg being the most up-to-date with current developments.
To prevent this divergence, remove the .dsc and .fdf files from
ArmPlatformPkg and leave OpenPlatformPkg as the master.
32-bit models are no longer tested or supported, so this series also
removes the .dsc/fdf files for them.
And the Sec library has no clients either, so that can also be removed
as it hasn't been tested for a long time.
We can't remove ArmJuno.dec yet because ACPI still uses it to set the
include path to ArmPlatform.h.
[PATCH 1/6] ArmPlatformPkg: remove ArmVExpress-CTA15-A7.dsc/fdf
[PATCH 2/6] ArmPlatformPkg: remove ArmVExpress-FVP-AArch64.dsc/fdf
[PATCH 3/6] ArmPlatformPkg: remove ArmJuno.dsc/fdf
[PATCH 4/6] ArmPlatformPkg: remove ArmVExpress-RTSM-A15_MPCore.dsc/fdf
[PATCH 5/6] ArmPlatformPkg: remove unused Sec library
[PATCH 6/6] Revert "ArmPlatformPkg: Create an ARM Platform DSC / FDF
[1] https://git.linaro.org/uefi/OpenPlatformPkg.git
Continuing in my cleanup of ArmPlatform, I'm removing an untested
model platform and removing the untested Sec binary from FVP models.
[PATCH 1/2] Platforms/ARM: FVP: remove Sec.inf
[PATCH 2/2] Platforms/ARM: remove ArmVExpress-RTSM-A15_MPCore
This series replaces the previous series titled "[PATH 0/5] Copy commits
from EDK2". They are all destined for the OpenPlatformsPkg repo [1]
The first 5 patches are the same and are straight ports from EDK2:
[PATCH 01/15] ArmPlatformPkg/FVP: use 'auto' alignment and FIXED
[PATCH 02/15] ArmPlatformPkg: Link separated VarCheckUefiLib NULL
[PATCH 03/15] ArmPlatformPkg/FVP: unify support for Foundation and
[PATCH 04/15] ArmVExpressPkg/ArmVExpress-FVP-AArch64: run GICv3 in v3
[PATCH 05/15] Platforms/ARM: TC2: copy from EDK2
The following patches are minor updates to the platform support:
[PATCH 06/15] Platforms/ARM: TC2: update paths for OpenPlatformPkg
[PATCH 07/15] Platforms/ARM: TC2: add EDK2_OUT_DIR support
[PATCH 08/15] Platforms/ARM: TC2: use Intel BDS
[PATCH 09/15] Platforms/ARM: TC2: build Shell from source
[PATCH 10/15] Platforms/ARM: Juno: build Shell from source
[PATCH 11/15] Platforms/ARM: Juno: Use TTYTERM console
[PATCH 12/15] Platforms/ARM: make PL111 build time optional
[PATCH 13/15] Platforms/ARM: FVP: use TTYTERM console
[PATCH 14/15] Platforms/ARM: FVP: Add optional GICv3 with v2 Legacy
[PATCH 15/15] Platforms/ARM: FVP: build Shell from source
Unless I hear any objections by the end of the week, I'll commit these
patches to the OpenPlatformPkg repo. If I get the OK from Leif and Ard,
I'll commit them sooner.
Once they're in, I'll resubmit/ping on the patches to remove the
platforms from EDK2. I'll also update uefi-tools to account for the
changes.
[1] https://git.linaro.org/uefi/OpenPlatformPkg.git
We are planning to support sas disk for hisilicon hip06.
Want to double check whether using EFI_EXT_SCSI_PASS_THRU_PROTOCOL is right
direction?
Originally we would like directly use BLOCK IO, which need hack scsi cmd (cdb)
and port lots of code.
Happen to find the scsi protocol is somehow realized in
./MdePkg/Library/UefiScsiLib/UefiScsiLib.c, so switch to
EFI_EXT_SCSI_PASS_THRU_PROTOCOL.
By the way, I got one problem.
The API of EFI_EXT_SCSI_PASS_THRU_PROTOCOL can not be called by
MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.c.
While EFI_NOT_FOUND EFIERR (14) is returned.
Status = ScsiBusDev->ExtScsiInterface->GetNextTargetLun
(ScsiBusDev->ExtScsiInterface, &TargetId, &Lun);
Any suggestion?
Thanks
Zhangfei
GICv3 with v2 legacy support was removed, but this patch adds it back in
conditionally.
The default continues to use GICv3 natively unless specifically
requested at build time by defining "ARM_FVP_GICV3_WITH_V2_LEGACY".
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <ryan.harkin(a)linaro.org>
---
Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc b/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
index b14aeb0..8f7d4aa 100644
--- a/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
+++ b/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
@@ -77,6 +77,10 @@
# It could be set FALSE to save size.
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
+!ifdef ARM_FVP_GICV3_WITH_V2_LEGACY
+ gArmTokenSpaceGuid.PcdArmGicV3WithV2Legacy|TRUE
+!endif
+
[PcdsFixedAtBuild.common]
gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Fixed Virtual Platform"
gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"ARM-FVP"
--
2.1.4
Before removing Juno and FVP from ArmPlatformPkg, it has been noted that
we should copy latest developments from EDK2 to OpenPlatformPkg to make
sure there is not functionalilty lost.
With the patches I manually copied over, I tried to keep the original
author using the "--author" param, hopefully this translates across git
send-email.
The following 4 patches are copied from EDK2:
[PATCH 1/5] ArmPlatformPkg/FVP: use 'auto' alignment and FIXED
[PATCH 2/5] ArmPlatformPkg: Link separated VarCheckUefiLib NULL class
[PATCH 3/5] ArmPlatformPkg/FVP: unify support for Foundation and Base
[PATCH 4/5] ArmVExpressPkg/ArmVExpress-FVP-AArch64: run GICv3 in v3
And this one it not copied from EDK2:
[PATCH 5/5] Platforms/ARM: Add optional GICv3 with v2 Legacy support