[RFC PATCH edk2-platforms v1 3/7] Platform/ARM: Move BootMonFs package to ArmCommonPkg


PierreGondois
 

From: Pierre Gondois <Pierre.Gondois@arm.com>

The Platform/ARM/ARM.dec file implies that the Platform/ARM/ folder
is a package. This folder however hosts other packages describing
platforms (JunoPkg, SgiPkg, ...) and packages describing drivers
(BootMonFs, FdtPlatformDxe).

As the Dec specification mention:
"EDK II Packages cannot be nested within other EDK II Packages."
Also, CI modules are based on packages. Having non-nested packages
allows to have distinct entities each CI module must check.

To remove the nested structure:
1- Create a Platform/ARM/ArmCommonPkg package containing code
shared among platforms. It will contains the following folders:
Platform/ARM/[Drivers/ | Include/ | Library/]
2- Remove the BootMonFs and FdtPlatformDxe packages and resolve
the broken dependencies to these drivers
3- Resolve the broken dependencies to the libraries from
Platform/ARM/Library

As part of 2, this patch removes the BootMonFs.dec package to
ArmCommonPkg.dec and updates references to BootMonFs accordingly.

Bugzilla: 3259 (https://bugzilla.tianocore.org/show_bug.cgi?id=3259)
Signed-off-by: Pierre Gondois <Pierre.Gondois@arm.com>
---
Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec | 7 +++++++
.../Drivers/BootMonFs/BootMonFs.dec | 20 -------------------
.../Drivers/BootMonFs/BootMonFs.inf | 1 -
Platform/ARM/JunoPkg/ArmJuno.fdf | 2 +-
Platform/ARM/Morello/MorelloPlatformFvp.fdf | 2 +-
Platform/ARM/N1Sdp/N1SdpPlatform.fdf | 2 +-
Platform/ARM/SgiPkg/SgiPlatform.fdf | 2 +-
.../ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf | 2 +-
Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 2 +-
9 files changed, 13 insertions(+), 27 deletions(-)
delete mode 100644 Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.dec

diff --git a/Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec b/Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec
index cce497c27fa5..dac54b9f9ed8 100644
--- a/Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec
+++ b/Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec
@@ -20,3 +20,10 @@ [LibraryClasses]

[Guids]
gArmBootMonFsFileInfoGuid = { 0x41e26b9c, 0xada6, 0x45b3, { 0x80, 0x8e, 0x23, 0x57, 0xa3, 0x5b, 0x60, 0xd6 } }
+
+[Guids.common]
+ gArmBootMonFsTokenSpaceGuid = { 0xeb76a201, 0x69b4, 0x491f, { 0x9b, 0xde, 0xbf, 0x30, 0xbd, 0x03, 0x82, 0xb4 } }
+
+[PcdsFixedAtBuild.common]
+ # Boot Monitor FileSystem
+ gArmBootMonFsTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths|L""|VOID*|0x0000003A
diff --git a/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.dec b/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.dec
deleted file mode 100644
index 1819e2f46d9c..000000000000
--- a/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.dec
+++ /dev/null
@@ -1,20 +0,0 @@
-#/** @file
-#
-# Copyright (c) 2011-2017, ARM Limited. All rights reserved.
-#
-# SPDX-License-Identifier: BSD-2-Clause-Patent
-#
-#**/
-
-[Defines]
- DEC_SPECIFICATION = 0x0001001A
- PACKAGE_NAME = BootMonFs
- PACKAGE_GUID = 41f14aba-452f-4204-a435-25242973c5b1
- PACKAGE_VERSION = 0.1
-
-[Guids.common]
- gArmBootMonFsTokenSpaceGuid = { 0xeb76a201, 0x69b4, 0x491f, { 0x9b, 0xde, 0xbf, 0x30, 0xbd, 0x03, 0x82, 0xb4 } }
-
-[PcdsFixedAtBuild.common]
- # Boot Monitor FileSystem
- gArmBootMonFsTokenSpaceGuid.PcdBootMonFsSupportedDevicePaths|L""|VOID*|0x0000003A
diff --git a/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf b/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
index 10efa919e2f6..791e6fae0126 100644
--- a/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
+++ b/Platform/ARM/ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
@@ -29,7 +29,6 @@ [Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
Platform/ARM/ArmCommonPkg/ArmCommonPkg.dec
- Platform/ARM/Drivers/BootMonFs/BootMonFs.dec

[LibraryClasses]
BaseLib
diff --git a/Platform/ARM/JunoPkg/ArmJuno.fdf b/Platform/ARM/JunoPkg/ArmJuno.fdf
index f70d30c6a9d9..4e9cbee52932 100644
--- a/Platform/ARM/JunoPkg/ArmJuno.fdf
+++ b/Platform/ARM/JunoPkg/ArmJuno.fdf
@@ -139,7 +139,7 @@ [FV.FvMain]
INF ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.inf

# Versatile Express FileSystem
- INF Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ INF ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf

#
# FAT filesystem + GPT/MBR partitioning
diff --git a/Platform/ARM/Morello/MorelloPlatformFvp.fdf b/Platform/ARM/Morello/MorelloPlatformFvp.fdf
index 851ee3159b3d..8bdb7f0d0f5f 100644
--- a/Platform/ARM/Morello/MorelloPlatformFvp.fdf
+++ b/Platform/ARM/Morello/MorelloPlatformFvp.fdf
@@ -114,7 +114,7 @@ [FV.FvMain]
INF ArmPkg/Drivers/GenericWatchdogDxe/GenericWatchdogDxe.inf
INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf

- INF Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ INF ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf

# Virtio Block Device support
diff --git a/Platform/ARM/N1Sdp/N1SdpPlatform.fdf b/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
index c4e1f7b4b8fc..af6a76470c71 100644
--- a/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
+++ b/Platform/ARM/N1Sdp/N1SdpPlatform.fdf
@@ -126,7 +126,7 @@ [FV.FvMain]
INF ArmPkg/Drivers/GenericWatchdogDxe/GenericWatchdogDxe.inf
INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf

- INF Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ INF ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf

# FAT filesystem + GPT/MBR partitioning
diff --git a/Platform/ARM/SgiPkg/SgiPlatform.fdf b/Platform/ARM/SgiPkg/SgiPlatform.fdf
index 8227ae03330c..1e72c1d0544c 100644
--- a/Platform/ARM/SgiPkg/SgiPlatform.fdf
+++ b/Platform/ARM/SgiPkg/SgiPlatform.fdf
@@ -157,7 +157,7 @@ [FV.FvMain]
INF ArmPlatformPkg/Drivers/LcdGraphicsOutputDxe/LcdGraphicsOutputDxe.inf
!endif

- INF Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ INF ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf
INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf

#
diff --git a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf
index f98de162e634..4dd01308554c 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf
+++ b/Platform/ARM/VExpressPkg/ArmVExpress-CTA15-A7.fdf
@@ -121,7 +121,7 @@ [FV.FvMain]
INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf

# Versatile Express FileSystem
- INF Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ INF ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf

#
# USB support
diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
index d6f31ecda42f..e45e5a610f4c 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
@@ -417,7 +417,7 @@ [Components.common]
}

# Versatile Express FileSystem
- Platform/ARM/Drivers/BootMonFs/BootMonFs.inf
+ ArmCommonPkg/Drivers/BootMonFs/BootMonFs.inf

#
# Networking stack
--
2.17.1